有了二叉查找樹、平衡樹(AVL)爲啥還須要紅黑樹?

  • 平衡樹(AVL)是爲了解決 二叉查找樹(BST)退化爲鏈表的狀況。
  • 紅黑樹(RBT)是爲了解決 平衡樹 在刪除等操做須要頻繁調整的狀況。

紅黑樹5個特徵二叉樹

  1. 每一個節點要麼是黑色,要麼是紅色。
  2. 根節點是黑色。
  3. 每一個葉子的節點都是黑色的空節點(NULL)。
  4. 每一個紅色節點的兩個子節點都是黑色的。
  5. 從任意節點到其每一個葉子的全部路徑都包含相同的黑色節點。

平衡二叉樹的旋轉鏈表

  1. 左-左型:作右旋
  2. 右-右型:作左旋
  3. 左-右型:先作左旋,後作右旋
  4. 右-左型:先作右旋,後作左旋
相關文章
相關標籤/搜索