线段树是省选必考的数据结构,也是最难入门的之一。

线段树解决什么问题

  • 区间求和
  • 区间最值
  • 区间修改 + 区间查询

线段树的核心思想

把区间不断二分,每个节点维护一个区间的信息。

线段树的三个操作

1. 建树 build

递归建树,O(n) 复杂度

2. 单点修改 update

递归修改到叶子节点,O(log n)

3. 区间查询 query

递归查询覆盖区间,O(log n)

懒标记 lazy

区间修改时,不立即更新所有子节点,用懒标记延迟更新。

学习建议

  • 先掌握基础线段树
  • 再学懒标记
  • 最后学扫描线、可持久化等

省选一对一辅导:151 6522 2880