1.既然已经有了AVL树为什么还需要引入R-Btree,也就是说引入有什么意义?
就树形的拓扑结构而语言,大部分的BBST都不能做到相邻版本之间的结构差异不超过O(1),包括AVL树,AVL的插入可以做到O(1),而删除不能做到这点,从AVL删除一个节点可能导致O(log n)次旋转,从而导致树形结构剧烈变化。
然而R-Btree就可以做到这一点;
R-Btree任何一次动态操作引发的结构变化量不致超过O(1)。
所以,红黑树相比于AVL树的特点是:
每次插入/删除后拓扑结构的变化不超过O(1)
2.红黑树结构
B树的(2,4)树 (4阶B树)= 红黑树