红黑树

性质1:节点是红色或者黑色

性质2:根节点是黑色

性质3:每个叶节点是黑色的

性质4:不能有两个连续的红节点

性质5:从任一节点到叶节点的黑高度相等

一棵红黑树如下:


红黑树_第1张图片

优点:时间复杂度为log(n),并且任何不平衡都能在三次旋转之内解决,插入删除操作比AVL Tree快。

缺点:太复杂,代码量大,容易编写错误。

红黑树的旋转:

左旋                                        


红黑树_第2张图片

右旋


红黑树_第3张图片

红黑树添加节点的几种情况:


红黑树_第4张图片

你可能感兴趣的:(红黑树)