算法导论-13-2-红黑树上的连接操作

题目:(cd还有些疑问)


答:

a)黑高度增加的唯一方式是插入时黑色传到root且root原先为红色然后然后变为黑色。黑高度减少的唯一方式是额外的黑色传到root节点。因此可以在插入和删除过程中修改黑高度。当沿T下降时,遇到黑色顶点将黑高度减1即可得到各个节点的黑高度。

b)从T1开始,沿着结点的右子树向下找,找到黑高度为bh[T2]的黑结点

c)对任何x1属于Ty,有key[x1]<=key[x],因此Ty是X的左子树。

对任何x2属于T2,有key[x7]>=key[x],因此T2是X的右子树。

x->left = Ty;
x->right = T2;
Ty = x;

网上看到的答案是另一种方法:parent[x] = y; left[x] = left[y]; right[x] = root[T2],不知道为什么要这样做

d)  x应着为红色。恢复性质2), 4)的情况同case2, case3。

e) b), d)时间均为O(lgn),总时间为O(lgn)。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值