今天听见茹大神20分钟讲完了LCT,10分钟讲完平衡树,5分钟讲完树剖,感觉自己智商还不及他一半。。。
还有很多不懂:2017/1/15 的理解:
access是干什么用的? 不知道,只知道他是用来把某个节点到根的路径全部变成重链
其实是把splay分成很多个部分,一棵树中,不同链的东西用一个fa连起来,同一个用fa和child连起来
不同树似乎什么都不连起来。
splay维护的是深度
rever:把一个点在他所在的树中变成根节点,这样使他的左子树空出来了,因为他是深度最浅的,没有比他更浅的。
link:rever(x)一下,把fa[x]=y,因为x是这棵树中最浅的,可以直接连(疑问:会不会y已经有两个儿子了?)答:只有两个儿子,但是可能是很多节点的父亲
cut:rever(x),splay(y),这时y的左儿子肯定只有一个x,删掉即可。
find:找最浅的。