线段树

线段树是擅长处理区间的。线段树是一颗完美二叉树(所有的叶子的深度都相同,并且每个结点要么是叶子要么是有两个儿子的树)(满二叉树)

完全二叉树指的是在树中除了最后一层外,其余层都是满的,并且最后一层或者是满的,或者是在右边缺少连续的若干节点。

线段树上的每个节点都维护一个区间。根维护的是整个区间,每个节点维护的是父亲的区间二等分后的其中一个子区间。

当有n个元素时,对区间的操作可以在O(logn)的时间内完成。

看一下这篇讲蓝桥杯操作格子的   用了基础的线段树

http://www.cnblogs.com/assult/p/3614608.html

原文地址:https://www.cnblogs.com/wangkaipeng/p/6506812.html