B+树的特点及构建

B+树
B+树磁盘中数据库(MySQL)存储用B+树

特点:

(1)非叶子节点只能存储索引不能存储数据。(只能存储key,不能存储value)

(2)所有叶子节点会构成一个有序链表,可以按照key排序的次序依次遍历全部数据。

5阶B+树 8 5 15 16 10 17 18 6 7 9 19 20 21 22

B+树的特点及构建_第1张图片

B+树的特点及构建_第2张图片

构成链表

B+树的特点及构建_第3张图片

B+树的特点及构建_第4张图片

 B+树的特点及构建_第5张图片

B+树的特点及构建_第6张图片

B+树的特点及构建_第7张图片

 B+树的特点及构建_第8张图片

B+树的特点及构建_第9张图片

 B+树的特点及构建_第10张图片

 B+树的特点及构建_第11张图片

B树和B+树的对比

B+树的优点

(1)B+树在非叶子节点上不包含真正的数据,只当作索引使用,所以在内存相同条件下可以存放更多的key值。

(2)B+树的叶子节点都是相连的,因此对整棵树的遍历只需要一次先行扁你叶子节点即可。而且由于数据顺序排列并且相连,所以便于查找和搜索。而B树则需要进行每一层的递归遍历。

B树的优点

由于B树的每一个节点都包含key和value,因此我们查找时,只需要找到key所在的位置,就能找到value,但B树只有叶子节点存储数据,索引每一次查找,都必须一次一次一直到树的追打深度出,也就是叶子节点的深度,才能找到value。

你可能感兴趣的:(b树,数据结构,java)