- 博客(5)
- 收藏
- 关注
原创 splay单旋双旋对比
splay单双旋还挺有意思的,一直觉得单旋是ok的,但是感性画图分析了一波~ 单旋:直接旋转我自己 双旋:先旋转我的父亲,再旋转我自己 对于链结构,我们需要双旋,画图之后发现,我们采用双旋会至少压一层,而单旋则一直维持链式结构,显然单旋会被卡成O(n) 其余的结构而言,单旋双旋并无多大区别,但需要注意的是,双旋也存在一种结构被卡,但卡成连后就会被压层,而单旋则可能一直被卡,因此均摊复杂度还...
2018-06-15 21:40:15 1262
原创 树链剖分
树剖是个神奇的东西~ 其实也没有那么神奇~ 首先要知道树剖是什么:将一颗树分成若干条链后,对每一个链用数据结构进行维护。 我们最常用的就是开一颗线段树保存所有树链(显然我们要保证有序) 如何分链?dalao们称它叫启发式合并,什么意思呢? 对于一颗以v为根的子树,我们选择它若干儿子中,儿子的儿子数(包括儿子自己)最多的那一个儿子与v相连直到叶子节点,这么一条路径我们称它为重路径,路径上的...
2018-06-13 20:48:31 133
原创 虚树模板
虚树(建树): 所谓虚树,其实就是将原树缩小,即保留适当的重要节点(我们称为key point),对于此类问题,显然只有key point影响答案,因此我们只需对这些key point进行操作。 适用范围:数据很大,关键节点较少 虚树考得还是其它算法应用,只是套了一层虚树的壳,因此,我们只需明确如何处理虚树即可。 #include<bits/stdc++.h> #define...
2018-06-10 15:08:03 255
原创 欧拉函数&乘法逆元
一、欧拉函数简单应用 ·定义: 对于一个正整数n,它的欧拉函数的值即{p|p∈[1,n),p∈N+,p与n互质}的集合的大小,我们用φ(n)表示正整数n的欧拉函数 φ(n)=n(1-1/p1)(1-1/p2)……(1-1/pk),其中p1~pk为n的质因数 附证明:https://blog.csdn.net/paxhujing/article/details/51353672 ·性...
2018-06-07 20:24:19 1806
原创 后缀自动机
听说后缀自动机是一个能帮助你轻松pku的神数据结构?既然这么神奇那没理由不学啊!可我盯着后缀自动机看了一个上午也没有头绪,(主要是看了后面忘了前面,结果后来直接手动模拟一遍就搞清楚怎么跑的了,当时一脸蒙bi啊),然而,我还是决定简要地证明一下后缀机! 参考资料: https://blog.csdn.net/qq_35649707/article/details/66473069 2012no...
2018-06-02 14:49:30 331
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人