红黑树的创建
发布日期:2021-09-20 08:56:05 浏览次数:17 分类:技术文章

本文共 357 字,大约阅读时间需要 1 分钟。

红黑树的结点插入

cur为当前结点,p为父节点,g为祖父结点,u为叔叔结点

情况一

cur为红色,p为红色,g为黑色,u存在且为红色

调整前

在这里插入图片描述
调整后
在这里插入图片描述
调整方式:
将p结点和u结点调整为黑色,将g结点改为红色
将cur指向g结点,将p结点指向cur的p结点,继续向上调整

情况二

cur为红,p为红,g为黑,u不存在/u为黑

调整前

在这里插入图片描述
调整后
在这里插入图片描述
调整方式:
p为g的左孩子,cur为p的左孩子,则进行右单旋转;
相反, p为g的右孩子,cur为p的右孩子,则进行左单旋转
p、g变色–p变黑,g变红

情况三

cur为红,p为红,g为黑,u不存在/u为黑

调整前

在这里插入图片描述
调整后

在这里插入图片描述

调整方式:

p为g的左孩子,cur为p的右孩子,则针对p做左单旋转;

相反, p为g的右孩子,cur为p的左孩子,则针对p做右单旋转
则转换成了情况2

转载地址:https://blog.csdn.net/a_hang_szz/article/details/100116115 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Cloudimage
下一篇:MyStore

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月02日 04时30分00秒