一、红黑树性质5个:
性质1. 节点是红色或黑色。
性质2. 根是黑色。
性质3. 所有叶子都是黑色(叶子是NIL节点)。
性质4. 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)
性质5. 从任一节点到其每个叶子的所有简单路径 都包含相同数目的黑色节点。
二、二叉搜索树(BST)、平衡二叉树(AVL)、红黑树(RB-Tree)、B树的区别
BST(二叉查找树) | AVL(平衡二叉树) | RBT(红黑树) | |
查找 | 最好是完全二叉树O(logN),最坏是元素完全顺序或逆序O(N) | O(logN) | O(logN) |
插入 | 一般O(logN),最坏是无左子树/无右子树O(N) | 查找和旋转。O(logN)=找插入位置logN+插后旋转2(最多旋转2次,单旋1次,双旋2次) | 旋转和变色。旋转2次,变色O(logN),但变色操作简单所需要的代价很小 |
删除 | 一般O(logN),最坏是无左子树/无右子树O(N) | 查找和旋转。O(2logN)=找删除位置logN+删后旋转logN(最多旋转logN次) | 旋转和变色。旋转3次,变色O(logN),但变色操作简单所需要的代价很小 |
http://www.iteye.com/topic/614070
https://www.cnblogs.com/leng2052/p/5323954.html