2018年7月14日
摘要:
这题提示给的很好, 直接一气呵成 O1空间解决, 一次accept 开心..!! 中英双语解释在此; 这里懒得再写一遍了, 各位麻烦移步 https://leetcode.com/problems/recover-binary-search-tree/discuss/149509/32ms-beat 阅读全文
posted @ 2018-07-14 16:16
lychnis
阅读(78)
推荐(0)
编辑
摘要:
这题是典型的考察dp并且是非常直白的..不像有些题目很绕,想半天才知道是dp dp的做法就是分配一个数组, dp[i] 代表 第i 个位置的最长递增数组长度 递推公式 if (num[i]>num[k]) dp[i]=max(dp[k]+1,dp[i]) 0<=k<i 时间复杂度 O(n2) n是数 阅读全文
posted @ 2018-07-14 15:22
lychnis
阅读(91)
推荐(0)
编辑
摘要:
这种increasing xxx 题真是老客户了.. 本题麻烦点在于不能重复, 但是和之前的那些 x sum的题目区别在于不能排序的 所以.... 我还是没搞定. 看了一个Java的思路是直接用set来存最终结果去重; 不太清楚Java的set自带比较函数? 用cpp的话就要为vector<int> 阅读全文
posted @ 2018-07-14 14:44
lychnis
阅读(72)
推荐(0)
编辑
2018年7月9日
摘要:
1 之前见过的题结果还是没搞定, 思路是没问题的,但是细节处理错导致不能ac; 本题要求连续的子数组之和是k的倍数, 看起来好像要求和, 其实是用减法来做加法, 任何一个子数组的和= 前n个数的和-前m个数的和, m<n 2 注意题目要求subarry最少2个,所以这里必须存索引, 同时需要判断当前 阅读全文
posted @ 2018-07-09 00:54
lychnis
阅读(103)
推荐(0)
编辑
2018年7月8日
摘要:
1 初看还以为挺简单, 当然我也整出一个办法, 就是遍历元素, 用set来排序, 每遍历到新元素,就判断set里面有没有比它大和比他小的元素然后判断下索引, 当然这办法太复杂了, 不高效 2 然后我就去discussion里面看答案, 果然是不得了 On的空间复杂度和时间复杂度. 3 作者说左边遍历 阅读全文
posted @ 2018-07-08 22:39
lychnis
阅读(94)
推荐(0)
编辑
摘要:
1 这题难点在于如何在删除的时候做到O1, 因为要随机访问毫无疑问你要用到数组加hash结构,感觉这确实是个新思路 2 新增和随机访问没什么好说的, 来看删除如何做到O1 3 问题 可以在hash里面保存元素对应的索引值, 但是如果删除了数组中间某个元素, 会导致后面的索引全部需要更新, 这样就不是 阅读全文
posted @ 2018-07-08 21:33
lychnis
阅读(109)
推荐(0)
编辑
2018年7月5日
摘要:
1 要求算法复杂度比 O(n log n) 要好, 这就有点难了... 首先本来看题还挺简单, 不就是hash搞定, 结果看到最后 来个时间复杂度要求. 歇菜了 2 直接看答案了, discuss区第一名的答案直接就是On 的效率, 我只能说... 这帮人怎么这么聪明, 我怎么这么蠢 3 基本原理是 阅读全文
posted @ 2018-07-05 00:09
lychnis
阅读(138)
推荐(0)
编辑
2018年7月1日
摘要:
1 本题不能用 N sum的思路去做, 就是那种循环每个数字, push进去递归,然后pop出来那种, 直接timelimitexceed, 因为这里是3sum, 要优化一下; 答案的方法是第一个数字循环, 第二个和第三个一起循环, 所以是O(n*n), 如果用那种N sum写法得是 O(n3)了 阅读全文
posted @ 2018-07-01 18:10
lychnis
阅读(148)
推荐(0)
编辑
摘要:
class Solution { public: vector largestDivisibleSubset(vector& nums) { vector dp(nums.size(),0); //dp[i] 代表 nums[i]在nums里面能够整除的数字个数 1,2,3, 里面 dp[2]代表index=2的数 3 能够整数的数有1个; vec... 阅读全文
posted @ 2018-07-01 17:31
lychnis
阅读(82)
推荐(0)
编辑
摘要:
1 这题很简单, 但是估计没人能第一次做的时候bug free 2 因为第一点题目容易理解错, guess函数 返回 三种情况, 原文为 my nunber is xxxx, 这个my number 不是指的你的参数, 指的是答案... fuck 3 第二点 算中间数的时候不要 (a+b)/2 , 阅读全文
posted @ 2018-07-01 13:27
lychnis
阅读(100)
推荐(0)
编辑
|
|
|