
如图所示: 当数据量少时,B+树的查询会变成链表,效率低于红黑树。
两者都是平衡二叉树,但是红黑树不要求所有节点高度差不超过1,只要求1给节点到所有节点的路径中,最长路径不能超过最短路径的两倍。所以红黑树保持的是大致平衡
在进行插入或者删除元素后,平衡二叉树的旋转操作 消耗高于红黑树。因为红黑树有时可以通过改变颜色达到平衡,插入旋转最多两次,删除旋转最多三次,而AVL树必须花费比较的代价去保持高度平衡。
AVL树的查询效率略高于红黑树,因为高度平衡,同数据下,数据更加紧凑,可以少查询一层
红黑树的插入、删除的效率高于AVL树
1、红色节点不能连续
2、每一条路径的节点到空节点的黑色节点数量相同。
最多一条路径上有和黑色节点相同数量的红色节点,使这条路径上的节点数量是无红色节点的2倍.