【数据结构】第5章 树与二叉树

69 阅读1分钟

提示
仅供个人回顾参考

  • 基本概念
    • 叶结点
    • 结点
    • 深度(根->叶 累计)
    • 高度(叶->根 累计)
    • 层次(根->叶 累计)
    • 有序树
    • 无序数
    • 森林
  • 性质
  • 存储结构
    • 顺序存储结构
    • 链式存储结构
  • 具体存储结构
    • 双亲表示法
    • 孩子表示法
    • 孩子兄弟表示法(二叉树表示法),即以二叉链表作为存储结构

二叉树

  • 基本概念
    • 不存在度大于为2的有序树
    • 可以为空二叉树
  • 性质
    • 非空二叉树,k层2k12^{k-1}结点
    • 非空二叉树,叶结点数=度为2的结点数+1,即n0=n2+1n_0=n_2+1
    • 高度h,最多2h2^h-1结点
  • 特殊二叉树
    • 满二叉树(排满)
    • 完全二叉树(按层次依次排)
    • 二叉排序树(左子树小于右子树值)
    • 平衡二叉树(左子树右子树1深度差不超过1)
  • 存储结构
    • 顺序存储结构
    • 链式存储结构
  • 遍历
    • 先序遍历
    • 中序遍历
    • 后序遍历
    • 层次遍历
  • 由遍历序列反构造二叉树

线索二叉树

  • 基本概念
    • 本质: 像遍历单链表一样遍历该二叉树
  • 中序线索二叉树
  • 先序线索二叉树
  • 先序线索二叉树

树,森林,二叉树转换

树转二叉树

  • 规则: 左孩子右兄弟

森林转二叉树

  • 规则: 每个树当做森林

树遍历

  • 先根遍历
  • 后根遍历

森林遍历

  • 先序遍历
  • 中序遍历(中序遍历在二叉树形式而言,非二叉树形式也称后序遍历)

树与二叉树应用

  • 哈夫曼树
    • 带权路径长度最小的二叉树
  • 哈夫曼编码
  • 并查集
    • 操作: 初始化, 合并, 查子集