B-树
在计算机科学中,B树(B-tree)是一种树状数据结构,它能够存储数据、对其进行排序并允许以O(log n)的时间复杂度运行进行查找、顺序读取、插入和删除的数据结构。B树,概括来说是一个节点可以拥有多于2个子节点的二叉查找树。
B-树定义
B 树可以看作是对2-3查找树的一种扩展,它是一棵平衡的m路查找树,他或者是空树,或者是满足以下性质的树:
- 树中每个节点最多有m棵子树
- 根节点至少有两棵子树
- 除根节点之外的所有节点至少有(向上取整)m/2棵子树
- 所有的叶子节点出现在同一层上,并且不含任何信息,通常称为失败节点。失败节点为虚节点,在B树中并不存在,指向他们的指针为空指针。
B树的查找
与2-3树相同,可以参考2-3树
B树的插入
也是在插入时包含了节点的分裂与合并等操作,类似于2-3树