摘要: 最后更新 二刷? 是个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)
摘要: 最后更新 二刷 08 Jan 2017 利用线段树来更改,找到更改的NODE,然后更改那个brach上的所有max值。 首先确定recursion的终止条件 然后通过判断大小来找方向 找到NODE之后post order来进行更改。 java public class Solution { publ 阅读全文
posted @ 2017-01-10 10:00 哇呀呀..生气啦~ 阅读(166) 评论(0) 推荐(0)