2018-08-02 B树 B+树
B树是一种多路平衡查找树,一个m阶的B树的性质如下:
- 每一个节点至多有m个孩子
- 根节点的孩子数量最小为2,其余节点的孩子数量最小为 m/2 (向上取整)
- 节点中关键字的数量为 m/2 - 1 至 m - 1
- 所有叶子节点都在同一层
B+树是B树的变种,与B树的差异在于:
- 非叶子结点的子树指针与关键字个数相同
- 所有关键字都在叶子结点出现
- 叶节点是相连的
B+树的优势:
- 中间节点不保存数据,能容纳更多元素
- 对于范围查找来说,b+树只需遍历叶子节点链表即可,b树却需要重复地中序遍历。
MySql中InnoDB索引使用的就是 B+树
Written on August 2, 2018