[数据结构]----[线段树]-----线段树常见操作和例题

基本操作,

单点修改,区间和: 洛谷P3374 【模板】树状数组 1.

区间修改,单点查询: 洛谷P3368 【模板】树状数组 2.

区间修改,区间求和: 洛谷P3372 【模板】线段树 1.

区间最值:
洛谷P1531 I Hate It.

洛谷P1816 忠诚.

洛谷P2880 [USACO07JAN]Balanced Lineup G.

区间布尔值取反:
洛谷P3870 [TJOI2009]开关.

洛谷P2574 XOR的艺术.

区间加,区间乘混合

区间加,区间乘,区间求和: 洛谷P3373 【模板】线段树 2.

区间平方和,立方和

平方和: 牛客算法周周练15 - D 树上求和.

平方和and立方和:HDU4578 Transformation.

权值线段树

权值线段树和普通线段树几乎没有本质区别,最大的不同在于,权值线段树维护一个数组的值域

洛谷P1908 逆序对.

洛谷P1637 三元上升子序列.

2020牛客国庆集训派对day4: F - What Goes Up Must Come Down .

AtCoder Regular Contest 110(Sponsored by KAJIMA CORPORATION)C - Exoswap.

线段树势能分析

一些操作有这样一种特点:无论操作次数多么多,但是有效的操作只有少量次。例如:开平方(下取整),显然一个数字不停开平方,最后始终会得到1,之后的开平方操作就可以认为是无效的了( 1 = 1 \sqrt{1}=1 1 =1)。而且这个过程的速度很可观( N \sqrt{N} N 级别)。同类型的操作还有,“除”,“取模”等。维护这一类型操作的线段树有时候被称为势能线段树。

区间开平方:洛谷P4145 上帝造题的七分钟2 .

区间取模:CF438D The Child and Sequence .

一个极其少见的区间更新操作:CF920F SUM and REPLACE.

扫描线

扫描线算法解决的问题是:求二维平面直角坐标系中,多个矩形的面积(或周长)的并。

求矩形面积并: 洛谷P5490 【模板】扫描线.

求矩形周长并: HDU1828 Picture.

线段树优化建图

有的图论问题中,需要对一个区间的所有结点,向另一个区间的所有结点连边,如果暴力建图会导致边的数量为 N 2 N^2 N2 级别,这个时候要利用处理区间问题的有力工具,线段树,来优化建图。

线段树优化Dijkstra: CF786B Legacy.

线段树优化费用流: 洛谷P5331 [SNOI2019]通信.

动态开点线段树

CF915E Physical Education Lessons.

李超线段树

洛谷P4097 [HEOI2013]Segment.

可持久化线段树(主席树)

洛谷P3919 【模板】可持久化线段树 1(可持久化数组).

洛谷P3834 【模板】可持久化线段树 2(主席树).

线段树分治

洛谷P5787 【模板】线段树分治.

线段树区间历史最值

洛谷P6242 【模板】线段树 3.

线段树分裂

洛谷P5494 【模板】线段树分裂.

线段树合并

洛谷P4556【模板】线段树合并.

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值