Fork me on GitHub

B-Tree深入理解

定义:

根节点至少包括两个孩子

树中每个节点最多含有m个孩子(m>=2

除根节点和叶子节点外,其他每个节点字少有(ceilm/2):去上线),个孩子。

所有叶子节点都位于同一高度

假设每个非终端节点中包含有n个关键字信息,其中

a).Ki(i=1...n)为关键字,且关键字按顺序升序排序Ki-1< Ki

b).关键字的个数n必须满足:[ceil(m / 2) - 1] < = n < m-1

c).非叶子节点的指针:P[1],P[2],...,P[M];其中P[1]指向关键字小于K[1]的子树,P[M]指向关键字大于K[M-1]的子树,其它P[i]指向关键字属于(K[i-1],K[i])的子树 

目的:

让每个索引块尽可能存储更多的信息,让树的高度尽可能减少io次数

查询效率是O(logn)

 

posted @ 2019-05-23 16:35  Geek仁杰  阅读(330)  评论(0编辑  收藏  举报