5.1 数的基本概念
5.1.1 树的定义
用于表示具有层次结构的数据,在n个结点的树中有n-1条边
5.1.2 基本术语
结点的度:树中一个结点的孩子的个数
树的度:树中结点得最大度数
分支结点:度大于0的结点
结点深度:结点所在层次(根结点为第一层)
树的高度:树中结点最大层数
结点高度:以该结点为根的子树的高度
路径长度:路径上所经过的边的个数
森林:把树的根结点删去就是森林
5.1.3 树的性质
【1】树的结点数=所有结点数(树边数)+1
【2】度为m的树第i层最多个结点
【3】高度为h的m叉树至多有(-1)/(m-1)
【4】度为m,具有n个结点的树的最小高度h为【可以由3变换得到】
【5】度为m具有n个结点的树的最大高度为n-m+1
5.2 二叉树的概念
5.2.1 二叉树的定义与其特性
1. 二叉树的定义
二叉树是有序树,每个结点最多只有两个子树,子树有左右之分,次序不能颠倒
2. 几种特殊的二叉树
满二叉树
二叉树的每层都有最多的结点,满二叉树的叶子结点都集中在二叉树最后一层,且出叶子结点之外的每个结点的度数都2。不存在度为1的结点,如果层序从1开始编号,对于编号为i的结点,左结点是2i,右结点为2i+1。
完全二叉树
在满二叉树的基础上去掉若干编号更大的结点称为完二叉树(度为1的结点最多只能有1个;若出现某结点编号为i,为叶子结点或只有左孩子,则编号大于1的结点均为叶子结点;)
二叉排序树
左子树上所有的关键字都小于根结点关键字,右子树上所有结点关键字都大于根结点关键字
左子树与右子树又各是一棵二叉树
平衡二叉树
树中任意一个结点的左子树和右子树的高度之差绝对值不超过1
正则二叉树
树中每个分支结点都有2个孩子,即树中只有度为0或2的结点
3.二叉树的性质
(1)非空二叉树叶子结点等于度为2的结点数+1【】
(2)非空二叉树的第k层最多有