
数据结构
文章平均质量分 80
acniu
我是全优快云最菜的蒟蒻qwq
我爬~~
展开
-
LCT复杂度分析
LCT复杂度分析首先对维护的树进行重链剖分。定义节点 xxx 的权值 w(x)w(x)w(x) 为其下方挂的虚儿子的子树大小和加 111 。定义权值 s(x)s(x)s(x) 为 xxx 在所属 splaysplaysplay 中对应子树的 www 和。取势函数 Φ=Φ1+Φ2\Phi=\Phi_1+\Phi_2Φ=Φ1+Φ2 ,其中 Φ1\Phi_1Φ1 为 “重虚边” 的个数, Φ2=∑u∈Tlogs(u)\Phi_2=\sum_{u\in T}\log s(u)Φ2=∑u∈Tlogs(原创 2021-03-17 20:36:31 · 835 阅读 · 0 评论 -
左偏树学习笔记
左偏树是一种基于二叉树的可并堆。定义一个节点的“距离” disxdis_xdisx 为它到空节点的最短路长度,左偏树强制要求 dislson≥disrsondis_{lson}\ge dis_{rson}dislson≥disrson,所以 disx=disrson+1dis_x=dis_{rson}+1disx=disrson+1。可以证明,disx=O(logsize)dis_x=O(\log size)disx=O(logsize),其中 sizesizesize 为子树 xxx 的大原创 2020-10-15 23:35:07 · 133 阅读 · 0 评论 -
树状数组学习笔记
文章目录原理代码实现(单点修改区间查询)树状数组上二分代码实现卡常应用代码实现原理树状数组(binary index tree)可以以极小常数在 log\loglog 时间内维护前缀信息。定义 lowbit(x)\operatorname{lowbit}(x)lowbit(x) 表示 xxx 的最低的二进制位,如lowbit(2)=2,lowbit(3)=1\operatorname{lowbit}(2)=2,\operatorname{lowbit}(3)=1lowbit(2)=2,low原创 2020-10-06 22:14:12 · 187 阅读 · 1 评论