`
ljl_ss
  • 浏览: 53613 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

AVL树中需要要进行旋转的四种情况总结

阅读更多
备注一下,随时复习用



左旋:
新节点插入后最近平衡因子为+2的祖先节点为A,若新节点位于A的左儿子B的左子树中,则可使用左旋操作进行平衡  改变指针指向.
右旋:
新节点插入后最近平衡因子为-2的祖先节点为A,若新节点位于A的右儿子B的右子树中,则可使用右旋操作进行平衡  改变指针指向.
左----右旋:
新节点插入后最近平衡因子为+2的祖先节点为A,若新节点位于A的左儿子B的右子树中,则可使用先左旋后右旋操作进行平衡  改变指针指向.
左----右旋:
新节点插入后最近平衡因子为+2的祖先节点为A,若新节点位于A的右儿子B的左子树中,则可使用先右旋后左旋操作进行平衡  改变指针指向.
0
2
分享到:
评论

相关推荐

    AVL树数据结构平衡二叉查找树

    增加和删除可能需要通过一次或多次树旋转来重新平衡这个树。AVL树得名于它的发明者G. M. Adelson-Velsky和E. M. Landis,他们在1962年的论文《An algorithm for the organization of information》中发表了它。

    二叉排序树与平衡二叉树的实现

    平衡二叉排序树的在平衡因子绝对值等于2时开始调整到绝对值为1或0,在平衡因子绝对值为2时,二叉排序树会出现四种不同的情况的树形,因此这时需要分别单独讨论来降低平衡因子。 1.2.7 平衡二叉树的调整方法  平衡...

    平衡二叉树的所有操作(全)

    平衡二叉树(Balanced Binary Tree),简称平衡树(AVL树):树上任一结点的左子树和右子树的高度之差不超过1。平衡二叉树的一系列操作:删除、插入(在二叉排序树中插入新结点后,如何保持平衡)、调整平衡等等等。...

    二叉树排序树建立及平衡处理

    程序已经尽量做到操作简便了,用户只需要根据提示一步步进行操作就行了。 六思考和总结: 这个课程设计的各个基本操作大部分都在我的综合性实验中实现了,所以做这个主要攻克插入和删除这两个算法!其中插入在书本上...

    LeetCode解题总结

    5.1.5 判断二叉树是否为AVL树 5.1.6 将二叉树转为链表 5.1.7 二叉树添加指向右边节点的指针 5.1.8 树中节点的最小公共祖先 5.2 二叉树的构建5.3 二叉查找树 5.3.1 生成不重复的二叉查找树数目 5.3.2 验证是否为二叉...

    数据结构与算法分析Java语言描述(第二版)

    表达式树4.3 查找树ADT——二叉查找树4.3.1 contains方法4.3.2 findMin方法和findMax方法4.3.3 insert方法4.3.4 remove方法4.3.5 平均情况分析4.4 AVL树4.4.1 单旋转4.4.2 双旋转4.5 伸展树4.5.1 一个简单的想法...

    数据结构与算法分析-Java语言描述(第2版)_2_2

    表达式树 4.3 查找树adt——二叉查找树 4.3.1 contains方法 4.3.2 findmin方法和findmax方法 4.3.3 insert方法 4.3.4 remove方法 4.3.5 平均情况分析 4.4 avl树 4.4.1 单旋转 4.4.2 双旋转 4.5...

    数据结构与算法分析-Java语言描述(第2版)_1_2

    表达式树 4.3 查找树adt——二叉查找树 4.3.1 contains方法 4.3.2 findmin方法和findmax方法 4.3.3 insert方法 4.3.4 remove方法 4.3.5 平均情况分析 4.4 avl树 4.4.1 单旋转 4.4.2 双旋转 4.5...

    数据结构与算法分析_Java_语言描述

    表达式树 4.3 查找树ADT-二叉查找树 4.3.1 find 4.3.2 findMin和findMax 4.3.3 insert 4.3.4 remove 4.3.5 平均情形分析 4.4 AVL树 4.4.1 单旋转 4.4.2 双旋转 4.5 伸展树 4.5.1 一个简单的想法...

    数据结构与算法分析C描述第三版

     4.4 AVL树   4.4.1 单旋转   4.4.2 双旋转   4.5 伸展树   4.5.1 一个简单的想法(不能直接使用)   4.5.2 伸展   4.6 树的遍历   4.7 B树   4.8 标准库中的set和map   4.8.1 set   ...

    数据结构与算法分析_Java语言描述(第2版)]

    表达式树4.3 查找树ADT——二叉查找树4.3.1 contains方法4.3.2 findMin方法和findMax方法4.3.3 insert方法4.3.4 remove方法4.3.5 平均情况分析4.4 AVL树4.4.1 单旋转4.4.2 双旋转4.5 伸展树4.5.1 一个简单的想法...

    数据结构与算法分析 Java语言描述第2版

    表达式树4.3 查找树ADT——二叉查找树4.3.1 contains方法4.3.2 findMin方法和findMax方法4.3.3 insert方法4.3.4 remove方法4.3.5 平均情况分析4.4 AVL树4.4.1 单旋转4.4.2 双旋转4.5 伸展树4.5.1 一个简单的想法...

    数据结构与算法分析_Java语言描述(第2版)

    4.4 AVL树 4.4.1 单旋转 4.4.2 双旋转 4.5 伸展树 4.5.1 一个简单的想法(不能直接使用) 4.5.2 展开 4.6 树的遍历 4.7 B树 4.8 标准库中的集合与映射 4.8.1 关于Set接口 4.8.2 关于Map接口 4.8.3 TreeSet类和TreeMap...

    数据结构与算法分析第二版 ---C语言描述(附加答案)

    树4.1 预备知识4.1.1 树的实现4.1.2 树的遍历及应用4.2 二叉树4.2.1 实现4.2.2 表达式树4.3 查找树ADT——二叉查找树4.3.1...AVL树4.4.1 单旋转4.4.2 双旋转4.5 伸展树4.5.1 一个简单的想法4.5.2 展开4.6 树的遍历4.7 B...

    数据结构与算法分析

     4.4 AVL树   4.4.1 单旋转   4.4.2 双旋转   4.5 伸展树   4.5.1 一个简单的想法(不能直接使用)   4.5.2 伸展   4.6 树的遍历   4.7 B树   4.8 标准库中的set和map   4.8.1 ...

    leetcode和pat甲-Notes:学习笔记整理

    【数据结构】平衡二叉树(AVL树).md 【数据结构】并查集.md 【数论】快速幂全解(模平方根算法).md 【数论】素数问题.md 2. 刷题 LeetCode&剑指Offer LeetCode 1-100.md 剑指 offer 汇总.md 二分 二分法小结.md ...

Global site tag (gtag.js) - Google Analytics