1. 程式人生 > >【轉】動態樹入門

【轉】動態樹入門

blade 查詢 body lin class 線段樹 ref bsp 狀態

背景

樹剖大概算是入門了,樹上亂搞系列直徑,重心,樹剖,分治,倍增等)可以說都是一種思想,一種手段,而不是一種數據結構。

樹剖通過樹上面劃分鏈,在鏈上靜態操作(使用線段樹,樹狀態數組,主席樹等等工具),實現兩點路徑上值改變,最值查詢,和查詢,第k大查詢(對象可能是點,可能是邊)等功能。

但是如果輕重鏈會改變,如link兩個點,cut兩個點(有可能是森林或者樹,反正無環),難以維護靜態操作,就需要動態樹或者其他方式來剖分。

推薦

看來不少的博客,大都勉勉強強,論文也不是很懂,GG。下面這兩個慢慢看,終於,emmmm

第一個博主,很良心的帖子,但是沒有看清楚說的哪個是原樹還是splay樹。

https://oi.men.ci/link-cut-tree-notes/

第二個,比較清楚,分清楚了原樹和slapy樹(輔助樹),就好理解了。

https://www.cnblogs.com/BLADEVIL/p/3510997.html

個人的補充

等實現了代碼再說。

【轉】動態樹入門