红黑树是满足如下 5 个性质的二叉搜索树:
AVLTree 追求完美的平衡,所以更新树时,需要频繁地旋转。
RBTree 追求近似的平衡,所以更新树时,旋转的频率比 AVLTree 低,因此统计性能更好。
根据 RBTree 的第 4 个和第 5 个性质,可以推断出,在 RBTree 中,某个节点的较高的子树的高度最多是较低的子树的高度 2 倍。
可以参考这篇文档,但是该文档只介绍了插入节点的父节点是其祖父的左孩子的情况,因此可以结合 Python 实现代码中的注释一起阅读。
可以参考这篇文档,但是该文档只介绍了待删除节点有右子树的情况,因此可以结合 Python 实现代码中的注释一起阅读。