ZKW线段树

Posted

tags:

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

  对于区间问题,我们常用的方法是线段树。递归式的线段树具有通用性,但速度太慢。ZKW神犇使用非递归的线段树,常数特别小。

  与大部分线段树一样,ZKW线段树采用堆式存储。也就是说,x节点的左儿子是x*2,右儿子是x*2+1,父亲是x/2。

  由于采用非递归,我们要方便地找到叶子节点。ZKW线段树的方法是,从小到大枚举叶子节点数,直到线段树装得下。比如建立1000个节点,他从1开始枚举,2,4,8,16,……1024。发现1024足够大时,将[1, 1024)作为非叶节点,[1024, 2048)为叶子节点。

 

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

解析·优化 ZKW线段树

ZKW线段树

ZKW线段树 非递归版本的线段树

浅谈zkw线段树(by Shine_hale)

ZKW线段树

数据结构-ZKW线段树 详解