线段树相关知识点

Posted ofshk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线段树相关知识点相关的知识,希望对你有一定的参考价值。

线段树实现功能:

区间查找和更新

 

时间复杂度:

更新:O(logn)
查找:O(logn)

 

 

线段树内存需要开四倍大小,切记!!!

为什么需要开到四倍?

https://www.cnblogs.com/FengZeng666/p/11446827.html

理论上是2n-1的空间,但是你递归建立的时候当前节点为r,那么左右孩子分别是2*r,2*r+1,
此时编译器并不知道递归已结束,因为你的结束条件是在递归之前的,所以编译器会认为下标访问出错,也就是空间开小了,应该再开大2倍。
有时候可能你发现开2,3倍的空间也可以AC,那只是因为测试数据并没有那么大。

 

 

 

以上是关于线段树相关知识点的主要内容,如果未能解决你的问题,请参考以下文章

线段树详解

Luogu P3372 模板线段树 1

详解权值线段树

面试被问到线段树,已经这么卷了吗?

[知识点]线段树标记永久化

主席树(可持久化线段树)