红黑树

本文深入探讨红黑树的旋转操作,详细分析case2和case3中的节点指针调整及颜色变化,包括如何通过旋转保持红黑树的性质,如节点颜色更改、父节点指向更新等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DTX:
case 2

我看代码假设哈
进入循环之后

node指向n
tmp指向n的左子树(虽然么得)
把tmp存在p的右指数去(虽然是空)
把p存到n的左子树去

然后有tmp就改成黑色颜色 因为是叶子 没有就继续
把parent也改成红色 如果左右儿子都有的话

augment_rotation应该是让parent指向node
然后parent再指向node(node已经是parent了)

tmp指向node的右子树(相当于回到一开始的状态)

DTX:
case 3
tmp是p的右边 放到g的左子树
g放到p的右边
如果tmp有的话, 作为叶子就变黑
__rb_rotate_set_parents可能就是看看要不要把p变红
augment_rotation应该是让gparent指向parent

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值