关于红黑树和AVL树的一点浅显的见解
先看下什么是红黑树
红黑树的性质
性质1:每个节点要么是黑色,要么是红色。
性质2:根节点是黑色。
性质3:每个叶子节点(NIL)是黑色。
性质4:每个红色结点的两个子结点一定都是黑色。
性质5:任意一结点到每个叶子结点的路径都包含数量相同的黑结点。
红黑树节点的插入
我们可以发现在插入节点的父节点为红节点时,除去染色,旋转过程和二叉平衡树是一样的,不过由于二叉平衡树严格要求两个子节点的高度差不能超过1,所以在插入时会频繁破坏规则旋转,而在红黑树中,由于黑节点较多(大概是2倍),经常出现红节点直接插到黑节点上就完事的情况所以效率较高,不过,如果你要说,单单在查找方面的效率的话,平衡树比红黑树快。所以,我们也可以说,红黑树是一种不大严格的平衡树。也可以说是一个折中发方案。