线段树注意事项

来源:互联网 发布:windows音量控制程序 编辑:程序博客网 时间:2024/05/22 13:11

1.所有的乘除法都用位运算,速度快,而且好像可以防wrong answer

2.树的大小开maxn的四倍,即maxn<<2

3.如果范围是[0,n-1],子节点为2*root+1和2*root+2

   如果范围是[1,n],子节点为root<<1和root<<1|1

4.区间更新时,节点表示范围内的总和,和表示范围内的最大最小值是有不同的,

表示范围内总和时,整个区间都要乘上改变的节点值。

5.对于pushDown()函数要有深刻理解。


看的这篇博客http://www.cnblogs.com/TenosDoIt/p/3453089.html,理解了简单的线段树,共勉。




原创粉丝点击