红黑树(个人学习记录用)

说明:本资料中的内容及截图为本人在网络上学习时记录下的,侵权必删

1、红黑树性质

性质1:每个结点要么是黑色,要么是红色
性质2:根结点是黑色
性质3:每个叶子结点(NIL)是黑色
性质4:每个红色结点的两个子结点一定都是黑色。
不能两个红色结点相连。
性质5:任意一结点到每个叶子结点的路径都包含数量相同的黑结点。

红黑树并不是一个完美平衡的二叉查找树
红黑树维持自平衡的三种操作

a.变色:结点的颜色由红变黑或由黑变红
b.左旋:以某个结点作为支点(旋转结点),其右子结点变为旋转结点的父结点,右子结点的左子结点变为旋转结点的右子结点,左子结点保持不变。
c.右旋:以某个结点作为支点(旋转结点),其左子结点变为旋转结点的父结点,左子结点的右子结点变为旋转结点的左子结点,右子结点保持不变。
红黑树插入情景4.1:

叔叔结点存在且为红结点
依据红黑树性质4可知,红色结点不能相连==>祖父结点肯定为黑结点
因为不可以同时存在两个相连的红结点。那么此时该插入子树的红黑树层数的情况是:黑红红。最简单的处理方式是将其改为:红黑红
示意图
在这里插入图片描述

处理方式:
1.将P和U结点改为黑色
2.将PP改为

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值