简介
性质
非黑即红,父红子黑,黑叶,黑根,等黑高
- 每个节点或者是黑色,或者是红色。(非黑即红)
- 如果一个节点是红色的,则它的子节点必须是黑色的。(父红子黑)
- 每个叶子节点是黑色。 [注意:这里叶子节点,是指为空的叶子节点!] (黑叶)
- 根节点是黑色。(黑根)
- 从一个节点到该节点的子孙节点的所有路径上包含相同数目的黑节点。(等黑高)
基本操作
旋转
左旋 与 右旋
以 5
为支点,左旋得
左旋之后,支点从5
变成7
,右子树高度-1
,左子树高度+1
右旋即为左旋逆运算
双旋
一次左旋或一次右旋称为单旋
,
以右子为支作右旋,再以自己为支作左旋
或左子为支作左旋,再以自己为支作右旋
为双旋
例如,平衡下面的二叉树
以10为支作左双旋得
变色
颜色反转
如下有一个树
向上反色后得
插入
https://blog.csdn.net/weixin_43868793/article/details/123117698
删除
https://blog.csdn.net/weixin_43868793/article/details/123118897
源码
待续