天天看點

[算法]——平衡二叉樹(AVL樹)+ B 樹

一、平衡二叉樹

  特點: 保證查詢的效率較高, 根節點的左右子樹的高度差絕對值不超過1,左右子樹都是平衡二叉樹

  左旋操作六大步驟

[算法]——平衡二叉樹(AVL樹)+ B 樹

  右旋的六大步驟

[算法]——平衡二叉樹(AVL樹)+ B 樹

   當符合右旋操作時,如果左子樹的右子樹大于它的左子樹高度,需要對目前節點進行左旋操作,再對根節點進行右旋操作。(雙旋轉)

[算法]——平衡二叉樹(AVL樹)+ B 樹

二、 b 樹

[算法]——平衡二叉樹(AVL樹)+ B 樹

2-3樹的基本介紹

2-3 樹是最簡單的b 樹

基本特點: 1)2-3樹的所有葉子節點都在同一層

                   2)有兩個子節點的節點叫二節點,二節點要麼沒有子節點,要麼有兩個子節點

                   3)有三個子節點的節點叫三節點,三節點要麼沒有子節點,要麼有三個子節點

                   4)2 - 3 樹是由二節點和三節點構成的樹

b樹 (balanced tree)

基本特點: 1) b樹的階: 節點的最多子節點個數。比如 2-3 樹的階是3, 2- 3- 4樹的階是 4

                   2) b樹的搜尋, 從根節點開始,對節點内的關鍵字(有序)序列進行二分查找,如果命中則結束,否則進入查詢關鍵字所屬範圍的兒子節點;重複, 直到所對應的兒子指針為                              空,或已經是葉子節點

                   3) 關鍵字集合分布在整棵樹中,即葉子節點和非葉子節點都存放資料

                   4) 搜尋有可能在非葉子節點結束

                   5) 其搜尋性能等價與在關鍵字全集内做一次二分查找、

[算法]——平衡二叉樹(AVL樹)+ B 樹

b + 樹

[算法]——平衡二叉樹(AVL樹)+ B 樹