上一页 1 2 3 4 5 6 7 8 9 ··· 33 下一页
摘要: 最后更新 三刷。 11 Jan 2017 简单的二叉树,没啥技巧可言,DFS.. Time: O(n) Space: O(depth) 好像就是楞做,记录长度就行了。 判断失败就从0开始。。 iterative比较难啊。。貌似得记录每一个NODE的当时情况,就得有个MAP之类的了。。 先不考虑了 二 阅读全文
posted @ 2017-01-12 05:48 哇呀呀..生气啦~ 阅读(134) 评论(0) 推荐(0)
摘要: 最后更新 一刷 11 Jan 2017 这个题是Ez难度的吧。。。 注意edge cases就行。 熟悉下Character的方程: Character.isDigit(c); Character.isAlphabetic(c); 另外String.toUpperCase()就可以,没必要每一个ch 阅读全文
posted @ 2017-01-12 05:02 哇呀呀..生气啦~ 阅读(204) 评论(0) 推荐(0)
摘要: 最后更新 二刷 11 Jan 2017 首先,正常做的话,是每个格子都纵向横向CHECK一下,这样复杂度爆炸。。 看起来是用dp[][]记录情况,避免重复计算。但是这样的话,得有2个dp[][],分别记录某一个格子可在横向和纵向分别干死多少敌人。 空间复杂度又爆炸。。O(2MN) 不过可以优化。 遍 阅读全文
posted @ 2017-01-12 04:18 哇呀呀..生气啦~ 阅读(640) 评论(0) 推荐(0)
摘要: 最后更新 三刷。 10 Jan 2017 这个题印象挺深的,当时连PQ自定义comparator都不会。 最直接的就是把所有组合都加到PQ里,然后POP出K个。 稍微好点的是选其中一个numsA里最小的和另一个numsB里所有的数组合,加进PQ, 保证PQ里只有K个。 第一个Pop出的肯定是最小的P 阅读全文
posted @ 2017-01-11 05:39 哇呀呀..生气啦~ 阅读(165) 评论(0) 推荐(0)
摘要: 最后更新 四刷 10 Jan 2017 白送的题。 注意3点: 1) int[][] dp最好长宽都多加一行。要不累加的时候第一行第一列都要当做特殊情况处理= = 2) 注意index的选取= =容易混乱 3) 我他妈了个逼的长得太帅了。 Time: init: O(mn) query: O(1) 阅读全文
posted @ 2017-01-11 03:12 哇呀呀..生气啦~ 阅读(150) 评论(0) 推荐(0)
摘要: 最后更新 二刷。 10 Jan 2017 树状数组的话(FenWickTree)从一维延展到二维,并没有影响使用。 直接秒掉好吧。。太爽了。 Time: init: (MNlgMN) query/update : lgMN 一刷。 01 Dec 2016 从一维变成二维了。 线段树也能用,小tric 阅读全文
posted @ 2017-01-11 02:59 哇呀呀..生气啦~ 阅读(280) 评论(0) 推荐(0)
摘要: 最后更新 四刷 09 Jan 2017 区间内频繁查找,更新。。 先用线段树(SegmentTree)来做,这个题几乎是把线段树的操作都用了一遍。 每个NODE只有4种可能 1)如果l r包含了整个NODE,那么就是这个node; 2)如果l r在整个NODE范围的外面,那么无视此node; 3)如 阅读全文
posted @ 2017-01-11 02:37 哇呀呀..生气啦~ 阅读(211) 评论(0) 推荐(0)
摘要: 最后更新 二刷? 是个E难度的。。无所谓了。 区间内求和,但是不需要更新,只是反复差找,所以不是很有必要用线段树。 Time: Initialization: O(n) query: O(1)... Space: O(n) java public class NumArray { int[] dp; 阅读全文
posted @ 2017-01-10 11:12 哇呀呀..生气啦~ 阅读(164) 评论(0) 推荐(0)
摘要: 最后更新 二刷 09 Jna 2017 利用线段树进行区间查找,重点还是如何判断每一层的覆盖区间,和覆盖去见与当前NODE值域的关系。 java public class Solution { public int query(SegmentTreeNode root, int start, int 阅读全文
posted @ 2017-01-10 10:39 哇呀呀..生气啦~ 阅读(115) 评论(0) 推荐(0)
摘要: 最后更新 二刷 09 Jan 17 正儿八经线段树的应用了。 查找区间内的值。 对于某一个Node,有这样的可能: 1)需要查找区间和当前NODE没有覆盖部分,那么直接回去就行了。 2)有覆盖的部分,覆盖部分作为新的查找区间,往左右子找。 Time: O(NlgN) Space: O(lgN) fo 阅读全文
posted @ 2017-01-10 10:31 哇呀呀..生气啦~ 阅读(101) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 ··· 33 下一页