https://www.bilibili.com/video/av16552942?from=search&seid=13163420448884679920

一、线段树

1.线段树

维护区间信息(可合并性)
合并区间信息
单次操作时间复杂度O(logn)
单次空间复杂度O(n)

2.线段树存储方式

(1)堆式存储

(2)节点存储

strcut Node{int sumv,lc,rc}

二、权值线段树

  1. 维护全局的值域信息,每个节点记录的是该值域的值出现的次数。
  2. 用了二分的思想。
  3. 支持查询全局K小值,全局rank,前驱、后继等。
  4. 单次操作时间复杂度是O(log n)
  5. 空间复杂度是O(n)
  6. 相对于平衡树的优势:代码简单、速度快。
  7. 劣势:值域较大(10^9),需要离散化,就变成了离线的数据结构

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-12-06
  • 2021-07-09
  • 2021-06-04
  • 2021-09-17
猜你喜欢
  • 2021-10-21
  • 2021-11-26
  • 2021-12-05
  • 2021-11-10
  • 2022-12-23
相关资源
相似解决方案