平衡二叉树做题手法再升级

Posted 冯强计算机与软工考研

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了平衡二叉树做题手法再升级相关的知识,希望对你有一定的参考价值。

题目

今天我们来看一道关于平衡二叉树的题目:


依次把结点(34, 23, 15, 98, 115, 28, 107) 插入到初始状态为空的平衡二叉排序树中,使得在每次插入后保持该树仍然是平衡二叉树。请依次画出每次插入后所形成的平衡二叉排序树。


回顾知识点

我们先来大概回忆一下平衡二叉树的知识点(完整的讲解在知识点视频中有,忘记了可以回顾一下):

  1. 存在平衡二叉树的原因:只有树足够矮时,查找效率才高

  2. 平衡二叉树中的概念

平衡二叉树又叫作AVL树.
平衡二叉树是二叉排序树.
平衡因子:左子树高度-右子树高度.
平衡二叉树左右子树高度之差不超过1(递归的定义),平衡因子取值:-1、0、1.
平衡二叉树定义:可以是空二叉树,是非空二叉树时有左右子树都是平衡二叉树.
例子
  1. 平衡二叉树的插入/删除可能会导致平衡二叉树失去平衡(也就是左右子树高度之差超过1)

  2. 保证平衡的思想

    平衡二叉树做题手法再升级
    保证平衡思想
  3. 保证平衡手段(调整最小不平衡子树)
    LL调整(关于口诀的原因,请复习知识点讲解):

    平衡二叉树做题手法再升级
    LL调整的情况


    平衡二叉树做题手法再升级
    LL调整口诀


    平衡二叉树做题手法再升级
    LL例子

RR调整:

平衡二叉树做题手法再升级
RR

LR调整:

平衡二叉树做题手法再升级
LR

RL调整:

平衡二叉树做题手法再升级
RL

解题

LL:以L为新根、LR为旧根左、左右展开
RR:以R为新根、RL为旧根右、左右展开
LR:以LR为新根、LR左为L右、LR右为旧根左、左右展开
RL:以RL为新根、RL右为R左、RL左为旧根右、左右展开
1

2

视频讲解




怎样准备数据结构考研?

书籍

     天勤:基础不好的首先看这个,简单易懂

     王道:各高校老师喜欢参照这个书籍出题(没有广义表、没有三元组的存储知识点)

     数据结构(严蔚敏):根据自己学校的卷子,着重看看天勤、王道都没有深入讲解的内容

过程

     参考书阶段(9月之前)
          1.看知识点:先天勤、再王道、有必要,辅之以数据结构(严蔚敏)
          2.习题:每一小节-王道、每一章节-天勤;对于大题要适当,重点还是应该在选择题上

     真题阶段(11月之前)
          做真题、对真题答案、查漏补缺、掌握自己学校的数据结构考试的风格,重点题型

题型

     选择题
          知识点本身要熟、总结相关选择题的答题技巧

     填空题
          重概念、重计算的精确程度、重公式、重性质

     算法补全题
          重点要懂算法的执行流程、能读懂算法

     非算法大题
          懂算法流程、多模拟算法的执行过程

     算法大题
          c语言基础、数据结构综合能力、平时不要逃避算法题(要有自己的思考、多抄标准答案)

思维导图

     学习时用于学习知识,要弄清知识框架、层次结构

     到快考试的时候,利用思维导图快速迭代,短期内大量重复记忆

个人笔记、错题本

     会做的题一定要确保会做,总结相关快速解题办法

     重点关注曾经做错的题,到快考试的时候,这才是你提分的重要地方


大家点击广告呀~~

大家点击阅读原文呀~~

以上是关于平衡二叉树做题手法再升级的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode与《代码随想录》二叉树篇:做题笔记与总结-JavaScript版

剑指OFFER 平衡二叉树

平衡二叉树的删除

下次再让你讲平衡二叉树,可别说不会了

什么是《平衡二叉树》

平衡二叉树的介绍