B樹
B樹的概念
B樹是一種平衡的多路搜索樹,多用於文件系統、數據庫實現
B樹的特點
- 一個節點可以存儲超過兩個元素,可以擁有超過2個子節點;而二叉樹的每個節點最多可以存儲1個元素,並且一個父節點不能擁有超過2個子節點
- 擁有二叉搜索樹的一些性質
- 平衡,每個節點的所有子樹高度一致
- 樹的高度相比二叉樹不會更高
m階B樹的性質(m>=2)
- 假設一個節點存儲的元素個數爲X
- 根節點:1 <= x <= x-1
- 非根節點:clie(m/2) - 1 <= x <= x-1
- 如果有子節點,子節點個數 y = x + 1
- 根節點:2 <= y <= m
- 非根節點:clie(m/2) <= y <= m
- 例如
- m=3, 2<=y<=3,稱爲(2,3)樹,2-3樹,3階樹
- m=4, 2<=y<=4,稱爲(2,4)樹,2-4樹,4階樹
- m=5, 3<=y<=5,稱爲(3,5)樹,3-5樹,5階樹
紅黑樹 ~~ 4階B樹(2-3-4樹)
- 所有節點能存儲的元素個數x: 1<=x<=3,一個節點可以存儲三個元素
- 所有非葉子節點的子節點個數y: 2<=y<=4, 非葉子節點可以有四個子節點