B树系列
文章目录
B树和B+树的出现是为了查询数据时减少磁盘的IO次数,我们知道平衡二叉查找树是一种查询速度很快的数据结构。它的时间复杂度为(logN),但是它由于是一个二叉树,所以树的高度相对于多叉树来讲是比较高的,所以为了平衡磁盘IO与时间复杂度直接的关系,我们引入了B树和B+树;
1. B树
上图为一个3-4树,或者叫4阶树,即一个节点最多存储3个key,一个节点最多有4个孩子(3+1);
在B树里,一个节点里面有多个key;
1. B树特点
- 每个节点最多有m-1个关键字(可以存有的键值对);
- 根节点最少可以只有一个关键字;
- 非根节点至少有m / 2 个关键字;
- 每个节点中的关键字都按照从小到大的顺序排列,每个关键字的左子树中的所有关键字都小于它,而右子树中的所有关键字都大于它;
- 所有叶子节点都位于同一层,或者说根节点到每个叶子节点的长度都相同;
- 每个节点都存有索引和数据,也就是对应的key和value;
所以得到结