Skip to content

Latest commit

 

History

History
14 lines (12 loc) · 963 Bytes

README.md

File metadata and controls

14 lines (12 loc) · 963 Bytes

线段树/Segment Tree

线段树是一种非常强大的数据结构用来快速查询某一段区间内 数的sum、最高值、最小值。

要构造一颗线段树,主要包括构造、查询、单点修改、区间修改这四个 步骤。同时区间修改是线段数最强大的两个功能之一(另一个是区间查询)。 为了完成去修改,需要用到懒标记,懒标记的作用是将要修改的区间停留 在最top的位置,当需要访问标记以下节点的时候才需要将标记下移。 所以标记下移是懒标记必须附带的操作,它出现在查询和修改的过程中。

另外,使用线段数解决现实问题需要将现实中连续的区间离散华,以达到 计算的可行性。要做到连续区间离散化,需要用到Coordinate Compression /坐标压缩的技术,这项技术是通过将坐标店进行排序去重,然后将各个坐标 点映射点映射岛连续的离散值上。