随笔分类 - 数据结构
摘要:树链剖分 分为重链剖分和长链剖分, 这篇博客现只谈论重链剖分 ~~我不会告诉你我还不会长链剖分~~ QAQ 大概操作就是通过两层Dfs将一棵树剖为数个链,再用线段树处理,可将树形结构变为线型结构,便于操作。 ~~也就是优雅地暴力~~ 一般可用于处理一些树上问题,比如LCA 上代码 #define c
阅读全文
摘要:本人现已经学过,打过 ~~没背过~~ 的平衡树有 : 1.有旋treap 2.无旋treap 3.splay 现在想总结一下各平衡树 一,有旋treap 是oier常用且较短较好理解的平衡树, 重点的操作是左旋和右旋 思想大概是通过随机数维护一个BST, 并通过左旋和右旋使其保持平衡 上代码: #d
阅读全文
摘要:大悲 就这道 破题 好题,我NM调了一个多星期。简而言之 七种操作 并查集维护块和块的大小权值线段树维护块点数和点权lazy维护是否需要修改比乘积则通过log将积转化为和,int就能过 上代码 (本人码风还不错哦 QAQ) 1 #include <algorithm> 2 #include <ios
阅读全文