平衡二叉树-的四种旋转调整(代码,图解)

本文详细介绍了平衡二叉树的四种旋转调整方法,包括右单旋、左单旋、左右双旋和右左双旋,通过代码和图解的方式清晰阐述了每种旋转操作的过程,旨在帮助理解如何在插入新节点后维护平衡二叉树的平衡状态。
摘要由CSDN通过智能技术生成

平衡二叉树-的四种旋转调整(代码,图解)

1.右单旋:

新插入节点插入在较高左子树的左侧(左左右),插入新节点二十:
在这里插入图片描述
1.修改parent和curLR的孩子指针域

parent->left = curLR;
// 避免左单支的场景:subLR是nullptr
if (subLR)
		   curLR->parent = parent;

在这里插入图片描述

2.修改parent和curL的指针域

curL->right = parent;

在这里插入图片描述

3.处理旋转之前parent的双亲的孩子

// 因为parent可能是某个节点的子树,因此在更新parent的双亲前必须先将其之前的双亲记录
		Node* pparent = parent->parent;
		parent-
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值