資料結構與演算法 樹 B樹

2021-09-29 05:28:46 字數 612 閱讀 6981

概述

b樹也稱b-樹。b樹中所有結點中孩子結點個數的最大值成為b樹的階,通常用m表示,從查詢效率考慮,一般要求m>=3。一棵m階b樹或者是一棵空樹,或者是滿足以下條件的m叉樹。

定義

b樹是一種平衡的多分樹,通常我們說m階的b樹,它必須滿足如下條件:

根結點至少有兩個子女。

每個中間節點都包含k-1個元素和k個孩子,其中 m/2 <= k <= m

每乙個葉子節點都包含k-1個元素,其中 m/2 <= k <= m

所有的葉子結點都位於同一層。

每個節點中的元素從小到大排列,節點當中k-1個元素正好是k個孩子包含的元素的值域分劃。

插入

插入後如果沒超過最大容量,直接插入即可。插入後超過最大容量,將中間項作為新的節點,左右兩邊作為新節點的左右節點。新節點放入父節點中,並重新判斷當前節點是否需要拆分。

刪除

一般可以分成三種情況

刪除後需要保證樹結構滿足定義,必要時進行旋轉操作

參考鏈結

資料結構 B樹與B 樹

b樹 多路平衡查詢樹 b 樹 由二叉查詢樹進化而來 m叉查詢樹 由分塊查詢進化而來 多級分塊查詢 根節點的關鍵字範圍 1,m 1 根節點的關鍵字範圍 2,m n個關鍵字對應n 1個分支 n個關鍵字對應n個分支 關於分支是一樣的 根節點分支數範圍 2,m 除根節點外,其他節點數範圍 m 2,m 所有節...

經典資料結構 B樹與B 樹

小結 b樹 二叉樹,每個結點只儲存乙個關鍵字,等於則命中,小於走左結點,大於 走右結點 b 樹 多路搜尋樹,每個結點儲存m 2到m個關鍵字,非葉子結點儲存指向關鍵 字範圍的子結點 所有關鍵字在整顆樹 現,且只出現一次,非葉子結點可以命中 b 樹 在b 樹基礎上,為葉子結點增加鍊錶指標,所有關鍵字都在...

資料結構之B樹與B 樹

1970年,提出了一種用於外查詢的樹,名為b樹,b樹是一顆平衡多叉樹,允許乙個節點有多個孩子,b樹也常常稱為m樹,m為乙個節點的子節點數 b樹滿足以下標準特徵 1.根結點至少有兩個子女。2.每個中間節點都包含k 1個元素和k個孩子,其中 m 2 k m 3.每乙個葉子節點都包含k 1個元素,其中 m...