Splay是個(gè)好東西,中文譯名為伸展樹,它除了擁有Treap的功能外,還也可以實(shí)現(xiàn)快速分裂和合并序列。(學(xué)之前最好先對(duì)BST和Treap有一定了解) 最重要的是理解Splay的伸展操作,即將一個(gè)指定節(jié)點(diǎn)x自底向上通過旋轉(zhuǎn)操作,使x成為根節(jié)點(diǎn),要分三種情況來考慮: 1、x的節(jié)點(diǎn)為父節(jié)點(diǎn),進(jìn)行一次單旋即可; 2、x的父節(jié)點(diǎn)y、y的父節(jié)點(diǎn)z在一條直線上如下圖:
3、x,y,z不在一條直線上,形成一個(gè)“Z”形如下圖:
(好吧圖確時(shí)有點(diǎn)那個(gè)啥,不過這不是重點(diǎn),理解就好) 上代碼:


hhh
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注