![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
文章平均质量分 67
lpls1
这个作者很懒,什么都没留下…
展开
-
分桶法和平方分割
//超时= =public class Main { public static void main(String args[]) throws IOException { PrintWriter out=new PrintWriter(System.out); InputReader sc=new InputReader(System.in); int maxn=...原创 2019-11-30 14:55:45 · 170 阅读 · 0 评论 -
求区间第k大之——归并树(poj2104)
归并树与线段树的区别是,线段树的结点维护一个值,而归并树的结点维护一个有序数组。每个节点的数列是其两个儿子节点的数列合并后的结果。这颗线段树正是归并排序的完整再现。要计算在某个区间上不大于x的数的个数,只需:如果所给区间与当前区间没有交集,返回0如果所给区间完全包含当前区间,使用二分搜索找出当前区间的不大于x的数的下标再加1,返回这个值否则对两个儿子递归地进行计算之后返回他们的和。由...原创 2019-11-30 14:48:31 · 225 阅读 · 0 评论 -
线段树(java)
1.相关时间复杂度:因为总结点个数为2n,因此:初始化:O(n)因为不论哪种操作,对于每个深度都最多访问常数个结点,因此:每次更新:O(logn)每次求值:O(logn)2.线段树结构:线段树结点下标和元素范围下标均从0记。那么:每个结点存着[l,r)范围内的值。第0个结点维护[0,n)范围的值。下标为k的元素的值对应线段树结点下标为n-1+k。每个结点k的左右叶子结点下标分...原创 2019-10-15 20:01:49 · 160 阅读 · 1 评论