夜合蠲忿,萱草忘忧.|

蠲忿恚葉言

园龄:2年3个月粉丝:2关注:3

数据结构基础第5讲

数据结构基础第5讲 树和二叉树

本章内容:

img

考点一:基本术语

1.数的引入

img

2.树的定义

层次,分支,一对多。

img

互不相交的含义:

img

3.结点的分类

img

  1. 结点的度:

    img
    img

4.结点的关系

img

  • 树的深度:树中结点最大高度称为树的高度(或树的深度)

  • 行兄弟结点:在同一层但不是兄弟的结点

    img

  • 路径长度:等于路径所通过的结点数目减1(即路径上分支数目)

    img

  • 层次路径:从根节点开始,到达某节点p所经过的所有结点成为结点p的参差路径(有且只有一条)

    img

  • 子孙结点:一个结点的所有子树中的结点

  • 祖先结点:从根节点到达一个结点的路径上经过的所有结点

    img

5.树的其他概念

img

n个互不相交的树的集合叫做森林

img

考点二:树的性质和存储

1.树的性质

  1. 性质1:树中所有节点数等于所有结点度数之和+1
    img

  2. 性质2:度为m的树中第i层上至多有mi1个结点(i1
    img

  3. 性质3:高度为h的m次树之多有mh1m1个结点。
    img

  4. 性质4:具有n个结点的m次数的最小高度logm(n(m1)+1)
    img

    • 1.给定h

      {

    • 2.给定n

      {h

  5. 性质5:对于m度树,定义叶子结点个数为n0,度为1的结点个数为n1,度为m的结点个数为nm,于是有n0=n2+2n3+3n4++(m1)nm+1

img

2.树的存储

双亲表示法:
img

孩子链表示法:
img

孩子兄弟链:
img

img

考点三:二叉树

img

1.二叉树基本形态

img

2.二叉树特点:

img

3.左右斜树:

img

4.性质

  1. 性质1:在非空二叉树中,第i层上至多有2i1(i1)
    img

  2. 性质2:深度为k的二叉树至多有2k1(k1)
    img

  3. 性质3:对任意一棵二叉树,若其叶子结点数为n0,度为2的结点数为n2,则n0=n2+1

    img

  4. 性质4:结点个数等于所有结点的度之和加1

    img

  5. 性质5:具有n个结点的二叉树的最小高度log2(n+1)

    回顾性质2:深度为k的二叉树至多有2k1个结点k1.
    n2k1;k=log2(n+1)

5.完全二叉树和满二叉树

1.满二叉树

img

  1. 特点:
    • 叶子只能出现在最下一层
    • 只有度为0和度为2的结点
    • 在同样深度的二叉树中结点个数最多
    • 在同样深度的二叉树中叶子结点个数最多
      img

2.完全二叉树

img

  1. 特点

    • 叶子结点只能出现在最下两层且最下层的叶子结点都要集中在二叉树左面
      img

    • 完全二叉树中如果有度为1的结点,只可能有一个,且该节点只有左孩子

    • 深度为k的完全二叉树在k1层上一定是满二叉树

  2. 完全二叉树性质

    1. 性质1:在非空二叉树中,第i层上至多有2i1个结点(i1)

      img

    2. 性质2:
      img

    3. 性质3:

      n1的存在并不改变叶子总数,但改变结点总数
      img

    4. 性质4:

      img

    5. 性质5:

      img

    6. 性质6:

      img

    7. 性质7:

      img

    8. 性质8:

      img

    9. 性质9:

      img

    10. 性质10:

      img

点拨

  1. 完全二叉树叶子结点个数

    完全二叉树按顺序排列的,所以最后一个结点的父亲结点是最后一个父结点,后面就全是叶子了。
    img

3.二叉树的存储

  1. 非完全二叉树的顺序存储结构:

    img

    img

  2. 二叉树的存储结构特点:

    img

考点四:二叉树的遍历

1.遍历

  1. 先序遍历

    img

  2. 中序遍历

    img

  3. 后续遍历

    img

  4. 层次遍历

    img

  5. 遍历题型

    1. 中序
    • BST
    • 求语法树找中缀
    • 题目规定
    1. 先序
    • 总分结构
    • 自顶向下
    1. 后序
    • 分总
    • 自底向下

2.二叉树遍历性质

img

3.二叉树的生成

  1. 确定根结点及左右子树
    img

  2. 左子树BC确定

    img

  3. 右子树确定根结点及其左右子树

    img

  4. 在其右子树同

    img

  5. 最后完成左子树

    img

    中序作用:确定左子树
    先序作用:找到根节点

考点五:线索二叉树

1.线索二叉树

img

img

2.建立过程

img

3.线索化过程

img

考点六:树、森林和二叉树的关系

1.树转二叉树

img

左孩右兄弟

  1. 兄弟之间连根线

    img

  2. 除第一个孩子节点之间的连线,删去其他连线

    img

  3. 旋转为二叉树

    img

  4. 先先后中

    img

2.二叉树转树

img

  1. 从左孩子右链走,每遇到结点加连线。

    img

  2. 删去所有双亲结点与右孩子结点的连线。
    img

  3. 层次调整
    img

3.森林转二叉树

img

  1. 把每棵树转换成二叉树

    img

  2. 根节点视为兄弟,接线

    img

  3. 层次调整

    img

考点七:哈夫曼树

1.基本概念

img

img

img

img

2.最优二叉树的特点

img

3.构造哈夫曼树的原则

img

4.构建哈夫曼树过程

img

img

左小右大,左低右高
img

5.哈夫曼编码

  1. 相互互斥,没有前缀,实现长短不一

    img

  2. 特点:

    img

考点八:并查集

  1. 定义

    img

  2. 操作

    img

本文作者:蠲忿恚葉言

本文链接:https://www.cnblogs.com/JUANFENHUI/p/18152006

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   蠲忿恚葉言  阅读(7)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起