提示
仅供个人回顾参考
树
- 基本概念
- 叶结点
- 结点
- 度
- 深度(根->叶 累计)
- 高度(叶->根 累计)
- 层次(根->叶 累计)
- 有序树
- 无序数
- 森林
- 性质
- 存储结构
- 顺序存储结构
- 链式存储结构
- 具体存储结构
- 双亲表示法
- 孩子表示法
- 孩子兄弟表示法(二叉树表示法),即以二叉链表作为存储结构
二叉树
- 基本概念
- 不存在度大于为2的有序树
- 可以为空二叉树
- 性质
- 非空二叉树,k层结点
- 非空二叉树,叶结点数=度为2的结点数+1,即
- 高度h,最多-1结点
- 特殊二叉树
- 满二叉树(排满)
- 完全二叉树(按层次依次排)
- 二叉排序树(左子树小于右子树值)
- 平衡二叉树(左子树右子树1深度差不超过1)
- 存储结构
- 顺序存储结构
- 链式存储结构
- 遍历
- 先序遍历
- 中序遍历
- 后序遍历
- 层次遍历
- 由遍历序列反构造二叉树
线索二叉树
- 基本概念
- 本质: 像遍历单链表一样遍历该二叉树
- 中序线索二叉树
- 先序线索二叉树
- 先序线索二叉树
树,森林,二叉树转换
树转二叉树
- 规则: 左孩子右兄弟
森林转二叉树
- 规则: 每个树当做森林
树遍历
- 先根遍历
- 后根遍历
森林遍历
- 先序遍历
- 中序遍历(中序遍历在二叉树形式而言,非二叉树形式也称后序遍历)
树与二叉树应用
- 哈夫曼树
- 带权路径长度最小的二叉树
- 哈夫曼编码
- 并查集
- 操作: 初始化, 合并, 查子集