随笔分类 -  数据结构——线段树

摘要:线段树分裂 以某个键值为中点将线段树分裂成左右两部分,应该类似Treap的分裂吧(我菜不会Treap)。一般应用于区间排序。 方法很简单,就是把分裂之后的两棵树的重复的log个节点新建出来,单次时间复杂度严格O(logn)。 至于又有合并又有分裂的复杂度,蒟蒻一直不会比较有说服力的证明 阅读全文
posted @ 2018-09-15 15:54 Flash_Hu 阅读(4554) 评论(17) 推荐(16) 编辑
摘要:闲话 stO猫锟学长,满脑子神仙DS 网上有不少Dalao把线段树分治也归入CDQ分治? 还是听听YCB巨佬的介绍: 看来可以理解为广义下的。 不过叫它线段树分治挺形象的啊! 线段树分治思想 我们在做CDQ的时候,将询问和操作通通视为元素,在归并过程中统计左边的操作对右边的询问的贡献。 而在线段树分 阅读全文
posted @ 2018-08-01 22:05 Flash_Hu 阅读(2355) 评论(5) 推荐(2) 编辑
摘要:"洛谷题目传送门" emm。。。题目名写了个平衡树,但是这道题的理论复杂度最优解应该还是树状数组套值域线段树吧。 就像 "dynamic ranking" 那样(蒟蒻的 "Sol" ,放一个link骗访问量233) 所有的值(包括初始a数组,操作1、3、4、5的k)全部先丢进去离散化 对于1操作查比 阅读全文
posted @ 2018-04-10 22:05 Flash_Hu 阅读(281) 评论(0) 推荐(0) 编辑
摘要:"洛谷题目传送门" 闲话 这是所有LCT题目中的一个异类。 之所以认为是LCT题目,是因为本题思路的瓶颈就在于如何去维护同颜色的点的集合。 只不过做着做着,感觉后来的思路(dfn序,线段树,LCA)似乎要喧宾夺主了。。。(至少在代码上看是如此) 思路分析 一个一个操作来(瞎BB中,这种思路模式并不具 阅读全文
posted @ 2018-03-13 16:47 Flash_Hu 阅读(645) 评论(0) 推荐(2) 编辑
摘要:"洛谷题目传送门" O(n)的正解算法对我这个小蒟蒻真的还有点思维难度。洛谷题解里都讲得很好。 考试的时候一看到300000就直接去想各种带log的做法了,反正不怕T。。。。。。 我永远只会有最直观的思路(~~最差的程序效率~~) 题目相当于每次让我们找区间[1,las1]中上数第一个比当 阅读全文
posted @ 2018-02-24 15:22 Flash_Hu 阅读(529) 评论(0) 推荐(0) 编辑
摘要:orz "TPLY" 巨佬,题解讲的挺好的。 这里重点梳理一下思路,做一个小小的补充吧。 写可持久化线段树,叶子节点维护每个位置的fa,利用每次只更新一个节点的特性,每次插入logN个节点,这一部分思路还是很轻松。关于此部分的其它问题可以参考下我的 "可持久化线段树总结" 一开始,写惯了常规并查 阅读全文
posted @ 2018-02-05 22:54 Flash_Hu 阅读(1044) 评论(4) 推荐(1) 编辑
摘要:"洛谷题目传送门" YCB巨佬对此题有详细的讲解。 "%YCB%请点这里" 思路分析 不能套用静态主席树的方法了。因为的N个线段树相互纠缠,一旦改了一个点,整个主席树统统都要改一遍。。。。。。 ~~话说我真的快要忘了~~有一种数据结构,能支持单点修改,区间查询,更重要的是,常数优秀的它专门用来高 阅读全文
posted @ 2018-01-21 15:07 Flash_Hu 阅读(1014) 评论(0) 推荐(2) 编辑
摘要:接着上一篇总结——可持久化线段树来整理吧。 "点击进入" 这两种数据结构确实有异曲同工之妙。结构是很相似的,但维护的主要内容并不相同,主席树的离散化、前缀和等思想也要更难理解一些。 闲话 话说刚学习主席树的时候百度了一下,看到了“主席树”这一名字的由来—— 线段树竟然是被一个黄嘉泰的大佬因不会划分树 阅读全文
posted @ 2018-01-17 11:09 Flash_Hu 阅读(4436) 评论(6) 推荐(6) 编辑
摘要:最近正在学习一种数据结构——可持久化线段树。看了网上的许多博客,弄了几道模板题,思路有点乱了,所以还是来总结整理下吧。 可持久化线段树 首先要了解此数据结构的基础——线段树。百度一下,你就知道! 推荐一下 "这篇博客" ,对线段树的基本操作讲得挺详细的。 为了更好地理清思路,我在这里先放个模板题吧。 阅读全文
posted @ 2018-01-16 17:04 Flash_Hu 阅读(11350) 评论(1) 推荐(22) 编辑

点击右上角即可分享
微信分享提示
哥伦布
-1°
10:09发布
哥伦布
10:09发布
-1°
西南风
2级
空气质量
相对湿度
87%
今天
小雨
-1°/13°
周六
多云
-3°/10°
周日
-4°/2°