5.1树的基本概念
5.1.1树的定义和基本术语
基本概念
树形逻辑结构的应用
属性描述
概念区分
总结
5.1.2树的性质
总结
5.2二叉树的概念
5.2.1 二叉树的定义和基本术语
几个特殊的二叉树
满二叉树和完全二叉树
二叉排序树
平衡二叉树
总结
5.2.2二叉树的性质
一般二叉树
完全二叉树的性质
总结
突破点:完全二叉树最多只会有一个度为1的结点
5.2.3二叉树的存储结构
顺序存储
二叉树的顺序存储中,一定要把二叉树的结点编号与完全二叉树对应起来。 二叉树的顺序存储结构,只适合存储完全二叉树
链式存储
n个结点的二叉链表共有 n+1 个空链域 三叉链表——方便找父结点
总结
5.3二叉树的遍历和线索二叉树
5.3.1二叉树的先中后序遍历
层次遍历
先/中/后序遍历:基于树的递归特性
先序遍历:根左右(NLR) 中序遍历:左根右(LNR) 后序遍历:左右根(LRN)
代码
递归遍历的手算法
例:求树的深度(应用)
总结
5.3.2二叉树的层次遍历
总结
5.3.3由遍历序列构造二叉树
不同二叉树的遍历序列
若只给出一棵二叉树的 前/中/后/层 序遍历序列中的一种,不能唯一确定一棵二叉树
由遍历序列构造二叉树
前序 + 中序遍历序列
后序 + 中序遍历序列
层序 + 中序遍历序列
总结
前序、后序、层序序列的两两组合无法唯一确定一科二叉树(必须有个中序)
5.3.4线索二叉树的概念
作用
存储结构
三种线索二叉树
中序线索二叉树
先序线索二叉树
后序线索二叉树
对比
总结
|