红黑树学习笔记之红黑树的插入

附加知识点:

1. 红黑树的规则


2.“3+4”重构


无论插入还是删除,无论是单旋还是双旋,最终效果应该都是这样一种形式。

一. 双红缺陷

1. 插入关键码e,并设T中文本不含e

2. x=insert(e)必为末端节点,设x的父亲p=x->parent存在

3. 将x染红(除非它是根),规则124依然满足,而3则不一定

4. 双红(double-red):新插入的节点x与它的父亲p同时为红色=>双红缺陷

   

二. RR-1

u->color=Black

1. zig-zig

  

 只需将超级节点中pg的颜色互换。

2. zag-zig

 

只需将超级节点中xg的颜色互换。

三. RR-2

u->color=Red


当叔父节点u为红色时,修正双红缺陷导致的红黑树拓扑结构的变化为没有变化

四. 归纳

1. 重构,染色均属常数时间的局部操作,只需统计其总次数。

2.

 

判读叔父节点的颜色,为黑色则做一次局部的3+4调整,再做常数次的染色操作。

红色则略复杂,需做常数次的重染色,但可能导致在更高的节点处进而出现双红缺陷,需重新回到算法的入口。最坏的情况会多大O(logn),但这个循环的过程,只需做重染色,不必做任何的结构调整。

3. 







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值