Btree/B+tree

Btree

Btree是一种多路自平衡搜索树,它类似普通的二叉树,但是Btree允许每个节点有更多的子节点。Btree示意图如下:

Btree/B+tree
由上图可知 Btree 的一些特点:

  1. 所有键值分布在整个树中
  2. 任何关键字出现且只出现在一个节点中
  3. 搜索有可能在非叶子节点结束
  4. 在关键字全集内做一次查找,性能逼近二分查找算法

B+tree

B+树是B树的变体,也是一种多路平衡查找树,B+树的示意图为:
Btree/B+tree
由图可看出B+tree的特点 同时也是 Btree 和 B+tree的区别

  1. 所有关键字存储在叶子节点,非叶子节点不存储真正的data
  2. 为所有叶子节点增加了一个链指针

参考原址-(写的非常好)

Btree/B+tree区别

1、B+tree的所有关键字存储在叶子节点,非叶子节点不存储真正的data。

​ 2、B+tree为所有叶子节点增加了一个链指针。

​ 3、B+tree支持叶子节点的延展性(横向性)

​ 4、B+tree可以向下开始分叉