平衡搜索树常见有以下几种:
AVL树、2-3树、2-3-4树、B-树、Red-black树
2-3树等价于红黑树。
B+树是B-树的变形。所有的附属数据都保存在叶结点中,只将关键字和子女指针保存于内结点里,因此最大化了内结点的分支因子。
红黑树 和 b+树的用途有什么区别?
红黑树多用在内部排序,即全放在内存中的,STL的map和set的内部实现就是红黑树。
B+树多用于外存上时,B+也被成为一个磁盘友好的数据结构。
B+树和B-树的区别?
b+树的中间节点不保存数据,所以磁盘页能容纳更多节点元素,更“矮胖”;
b+树查询必须查找到叶子节点,b 树只要匹配到即可不用管元素位置,因此 b+树查找更稳定
(并不慢);
对于范围查找来说,b+树只需遍历叶子节点链表即可,b 树却需要重复地中序遍历。