小工具知识网

当前位置: 首页 > 行业知识 > 平衡二叉树

行业知识

平衡二叉树

2026-10-19 17:01:43 来源:互联网转载

1.平衡二叉树(Balanced Binary Tree)

(1)定义

也���“AVL树”,二叉排序树上任一结点的左子树和右子树的高度之差不超过1

(2)结点的平衡因子

平衡因子 = 左子树高度 - 右子树高度 (注:平衡二叉树结点的平衡因子的值只可能是-1、0或1)

3.平衡二叉树的插入

(1)根据二叉排序树的插入规则插入新结点

(2)从插入的结点沿路径回找到第一个不平衡的结点,若找不到则完成插入操作,否则继续步骤(3)

(3)调整以该结点为根的子树(最小不平衡二叉树)

4.平衡二叉树的删除

(1)按照二叉排序树的删除规则删除结点

(2)从删除的结点沿路径回找,找到第一个不平衡的结点,若找不到则完成删除操作,否则继续步骤(3)

(3)找到该不平衡结点的高度最高的孩子结点和子孙结点

(4)根据该子孙结点的位置,调整最小不平衡二叉树

(5)如果不平衡性向上传导,则继续步骤(2)

5.调整最小不平衡二叉树

(1)LL:在A的左孩子的左子树中插入新结点导致不平衡

(2)RR:在A的右孩子的右子树中插入新结点导致不平衡

(3)LR:在A的左孩子的右子树中插入新结点导致不平衡

(4)RL:在A的右孩子的左子树中插入新结点导致不平衡

6.平衡二叉树的查找效率

设平衡二叉树的结点数为n

性能性能指标
最坏时间复杂度 O ( l o g 2 n ) O(log_{2^n}) O(log2n​)
最好时间复杂度 O ( 1 ) O(1) O(1)
平均时间复杂度 O ( l o g 2 n ) O(log_{2^n}) O(log2n​)
空间复杂度O(n)

上一篇:cs起源服务器怎么开?

下一篇:英雄联盟为什么打不开?