平衡树SPLAY
平衡树这个东西一点用没有,非常有用,而且锻炼码力,是个非常好的模板题!
那么SPLAY这个东西 十分的毒瘤 我只调了一上午就调出来了!(我真棒)
首先 我们要知道平衡树是一棵二叉查找树 他可以处理:加点,删点,前驱,后继,num的排名,某排名的num,合并两棵平衡树,分离两棵平衡树
关于其原理 网上有很多 而且比较简单
对于splay来说 原理并不是最难的 码代码才是最难的!
那么就提一提细节吧:
当这一棵树为空的时候, t o t tot tot不一定=0,而 r o o t = 0 root=0 root=0
当这一棵树为空的时候,如果新加入一个节点,那么没有必要对于这个节点进行splay操作,(反正我的代码会死循环QAQ)
在rotate完了时候 记得update呀
对于该有返回值的函数 一定要返回值!(可怜孩子调了半天)
还有就是在: i n s e r t