平衡树
文章平均质量分 55
自闭自闭自闭了
这个作者很懒,什么都没留下…
展开
-
文艺平衡树
fhq Treap的区间操作首先我么需要知道如何用fhq Treap来实现区间操作例如,要操作的区间为[l, r],那么我么就在fhq Treap里把这一段split拆出来进行操作然后再合并回去按大小分裂,把树拆成两棵树,其中一个树的大小等于给定的大小,剩余部分再另一棵树里具体步骤把fhq Treap 按大小l - 1 拆成x和y再把y按大小 r - l + 1 拆分成x和y此时y树就是我们要操作的区间的平衡树,对他进行操作就可以了最后把x,y,z合并回去知道了fhq原创 2022-02-11 16:17:41 · 469 阅读 · 0 评论 -
fhq Treap
普通Treap,既Tree加Heap。它让平衡树上的每一个结点存放两个信息:值和一个随机的索引。其中值满足二叉搜索树的性质,索引满足堆的性质,结合二叉搜索树和二叉堆的性质来使树平衡。这也是Treap的性质。Treap用二叉堆来维护随机索引,其实就是相当于把插入次序随机化。插入一数值后你必然要让索引去满足二叉堆的特性,但又因为索引是随机的,那就会导致插入的数后不知道搞到哪里去了,相当于插入次序随机了。(随机大法好,吊打一切毒瘤数据)fhq Treap的奇怪操作并且是核心操作只有两个:分裂和合并原创 2022-02-10 23:08:07 · 1681 阅读 · 0 评论