一、B树
1.1 简介
一个n叉树数据结构,每个节点通常有多个孩子。
1.2 特点
m阶的B树具有如下特征
- 根结点要么没有子女要么至少有两个子女
- 每个中间节点都包含k-1个元素和k个孩子,其中 m/2 <= k <= m
- 每一个叶子节点都包含k-1个元素,其中m/2 <= k <= m
- 所有的叶子结点都位于同一层
- 节点中的元素从小到大排列,节点中k-1个元素正好是k个孩子包含的元素的值域分划
二、B+树
2.1 简介
B树的一个升级版,充分利用节点空间,查询速度接近于二分查找。通常用于数据库和操作系统的文件系统中。
2.2 特点
- 有k个子树的中间节点包含有k个元素 或者 k-1个元素(有两种版本,MySQL使用第一种)
- 每个中间节点的元素不保存元素的信息,只用来作索引
- 叶子结点中元素信息,且叶子结点本身依关键字的大小自小而大顺序链接