1. 程式人生 > >二叉樹、二叉查詢樹、B-、B+樹

二叉樹、二叉查詢樹、B-、B+樹

1.0二叉樹

一種樹結構,每個節點至多隻有兩個子樹,且子樹有左右子樹之分,其次序不能隨意顛倒

1.1  二叉查詢樹

又稱二叉搜尋樹或二叉排序樹或者B樹,是最基本的查詢樹,是AVL樹,紅黑樹等查詢樹的基礎。

1.1.1  二叉查詢樹的特點

二叉查詢樹或者是一棵空樹,或者是具有下列性質的二叉樹:

(1)若左子樹不空,則左子樹上所有結點的值均小於或等於它的根結點的值;

(2)若右子樹不空,則右子樹上所有結點的值均大於或等於它的根結點的值;

(3)左、右子樹也分別為二叉查詢樹;

1.1.2  二叉查詢樹的應用

基本不用最原始的二叉查詢樹,而使用比它效能更好的變種樹等

1.2  B-樹

1.2.1  B-樹的特點

1.2.2  B-樹的應用

主要用在檔案系統

1.3  B+樹

1.3.1  B+樹的特點

  1.其定義基本與B-樹同,除了:

       2.非葉子結點的子樹指標與關鍵字個數相同;

       3.非葉子結點的子樹指標P[i],指向關鍵字值屬於[K[i], K[i+1])的子樹

B-樹是開區間);

       5.

為所有葉子結點增加一個鏈指標;

       6.所有關鍵字都在葉子結點出現;

1.3.2   B+樹的應用

用在檔案系統資料索引和資料庫索引