有了二叉查找樹、平衡樹(AVL)爲啥還須要紅黑樹?
- 平衡樹(AVL)是爲了解決 二叉查找樹(BST)退化爲鏈表的狀況。
- 紅黑樹(RBT)是爲了解決 平衡樹 在刪除等操做須要頻繁調整的狀況。
紅黑樹5個特徵二叉樹
- 每一個節點要麼是黑色,要麼是紅色。
- 根節點是黑色。
- 每一個葉子的節點都是黑色的空節點(NULL)。
- 每一個紅色節點的兩個子節點都是黑色的。
- 從任意節點到其每一個葉子的全部路徑都包含相同的黑色節點。
平衡二叉樹的旋轉鏈表
- 左-左型:作右旋
- 右-右型:作左旋
- 左-右型:先作左旋,後作右旋
- 右-左型:先作右旋,後作左旋
歡迎關注本站公眾號,獲取更多信息