手动博客搬家: 本文发表于20170820 20:23:52, 原地址https://blog.csdn.net/suncongbo/article/details/77432667
线段树是一种将一个区间分成若干个子区间的数据结构。它是一棵二叉树,且满足点i的子节点编号分别为2i和2i+1 (叶子节点除外).
因此,在已知区间[1, n]的情况下,我们需要知道其最大的节点编号。
首先由线段树的性质可以证明线段树的深度不会超过(ceil(log_2 n))即(floor(log_2 n)+1),由此可以得到节点的最大编号不会超过$$sum_{i=0}^n 2^{floor(log_2 n)+1}=2^{floor(log_2 n)+2}-1=2^{floor(log_2 n)} imes4-1le2^{log_2 n} imes4-1=4n-1$$
即:线段树的数组下限为4*n-1.