浅谈线段树所需空间
下面将不带证明地给出正确结论,\(n\) 表示序列长度,\(q\) 表示询问次数。
- 使用左儿子下标 \(2u\) 右儿子下标 \(2u+1\):\(2^{\left\lceil\log_2{n}\right\rceil+1}\)。
实际中通常取 \(2^{\left\lfloor\log_2{n}\right\rfloor+2}\)。 - 使用动态开点:无需考虑具体大小,开到 \(q\log_{2}V\) 即可,其中 \(V\) 为值域。
- 可持久化线段树:\(2^{\left\lceil\log_2{n}\right\rceil+1}+q\log_{2}n\)。

浙公网安备 33010602011771号