平衡二叉树

本文详细介绍了平衡二叉树中平衡因子的概念,以及如何通过LL型、RR型、LR型和RL型调整来保持平衡。当删除节点时,根据平衡因子判断并采取相应策略,如寻找左子树最大节点或右子树最小节点进行替换。通过示例展示了具体的调整过程。
摘要由CSDN通过智能技术生成

1.平衡因子 BF:左子树和右子树高度差 =左子树高度 - 右子树高度的值(简称 BF)

2.最小不平衡子树:

距离插入节点最近的,并且 BF 的绝对值大于 1 的节点为根节点的子树。

 

88为最小不平衡子树的根节点。

 1).LL型调整

  • 旧根节点(节点 3)为新根节点(节点 2)的右子树
  • 新根节点的 右子树(如果存在)为旧根节点的左子树

LLå³æ转 (2) 

 2).RR型调整

  • 旧根节点(节点 1)为新根节点(节点 2)的左子树
  • 新根节点的左子树(如果存在)为旧根节点的右子树

 3).LR型调整

先左旋再右旋。

 

4).RL型调整

先右旋,再左旋。

 

 

 

平衡二叉树的节点删除:先找节点-》删除结点-》调整子树满足平衡二叉树

平衡因子为0或1时,找左子树最大的节点。与要删除的节点交换,然后删除要删除的节点,最大节点此时为根。

平衡因为为负数时,找右子树找最小的节点,与删除的节点交换,然后删除要删除的节点,最小节点此时为根。

例如:要删除20,bf为1,找左子树最大的节点为15,交换

 交换:

删除:

 

LR型调整

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值