演算法導論 13 1 持久動態集合

2021-06-08 20:03:46 字數 657 閱讀 6274

題目:

答:a)需要改變的結點包括「從根結點開始,到要插入到刪除的結點」的這條路徑上的所有結點。

b)

//持久動態集合上的樹的插入操作

tree* persistent_tree_insert(tree *t, int k)

else

//以新結點為父結點,做同樣的更新操作

p = f2;

} //返回樹

return t;

}

c)時間與空間都是o(h)

e)構造乙個結點中沒有p域的紅黑樹,類似於演算法導論-13.3-6-紅黑樹基於棧實現rb-insert。對於插入刪除中的旋轉操作,要對從根結點到旋轉結點路徑上的所以結點進行更新。

演算法導論 13 1紅黑樹的性質

紅黑樹的性質 1 每個結點或是紅的,或是黑的。2 根節點是黑的。3 每個葉子結點是黑的。4 如果乙個結點是紅的,則它的 5 對每個結點,從該結點到其子孫結點的所有路徑上包含相同數目的黑結點。一顆有n個節點的紅黑樹的高度至少為2lg n 1 練習 13.1 2 對於書上13 1圖中插入36。如果結點顏...

演算法導論 動態規劃

動態規劃這個演算法,我一直都搞不明白,也許因為我數學能力太差的緣故,總是不得其要領,每次學習這個演算法的時候,總是不知道所謂的狀態轉移方程到底是怎麼樣推導出來的。其實就在我寫這篇部落格的時候,我依然不清楚。什麼問題能用動態規劃來解決呢?動態規劃問題的特徵就是最優子結構,乙個遞迴結構 該問題需要求乙個...

演算法導論13 1紅黑樹的性質 練習總結

13.1 1 按照圖13 1 a 的方式,畫出關鍵字集合上高度為 3 的完全二叉搜尋樹。以三種不同方式想圖中加入 nil 葉結點並對各結點著色,使所得的紅黑樹的黑高分別為 2,3 和 4。如上圖的二叉樹 省略哨兵 t.nil 黑高為 2 令深度為 0,2 的結點為黑,深度為 1,3 的結點為紅。3 ...