磁盘操作的缓慢导致需要一颗不那么高的查找树,以减少访问磁盘的次数。
对于一颗完全M叉树,其高度大约是LogmN。M叉查找树可以参照二叉查找树建立。
上述想法的一种实现是B树,基本的B树的定义使其原则上保证了只有少数的磁盘访问。
M阶B树具有以下特性:
- 数据项存储在树叶上
- 非叶节点存储直到M-1个关键字一指示搜索的方向;关键字i代表子树i+1中的最小的关键字
- 树的根或者是一片树叶,或者其儿子数在2和M之间
- 除根外,所有非树叶节点的儿子数载M/2和M之间
- 所有的树叶都在相同的深度上并由L/2和L之间个数据项,L的确定稍后描述
注:要求半满是为了使得B树不会退化为简单的二叉树