4.1树的基本概念
- 树的定义:
由一个或多个(n≥0)结点组成的有限集合T,有且仅有一个结点称为根(root),当n>1时,其余的结点分为m(m≥0)个互不相交的有限集合T1,T2,…,Tm。每个集合本身又是棵树,被称作这个根的子树 。
- 树的结构特点
- 非线性结构,有一个直接前驱,但可能有多个直接后继(1:n)
- 树的定义具有递归性,树中还有树。
- 树可以为空,即节点个数为0。
- 若干术语(红色要重点掌握)
- 根 à 即根结点(没有前驱)
- 叶子 à 即终端结点(没有后继)
- 森林 à 指m棵不相交的树的集合(例如删除A后的子树个数)
- 有序树 à 结点各子树从左至右有序,不能互换(左为第一)
- 无序树 à 结点各子树可互换位置。
- 双亲 à 即上层的那个结点(直接前驱) parent
- 孩子 à 即下层结点的子树 (直接后继) child
- 兄弟 à 同一双亲下的同层结点(孩子之间互称兄弟)sibling
- 堂兄弟 à 即双亲位于同一层的结点(但并非同一双亲)cousin
- 祖先 à 即从根到该结点所经分支的所有结点
- 子孙 à 即该结点下层子树中的任一结点
- 结点 à 即树的数据元素
- 结点的度 à 结点挂接的子树数(有几个直接后继就是几度)
- 结点的层次 à 从根到该结点的层数(根结点算第一层)
- 分支结点 à 除树根以外的结点(也称为内部结点)
- 树的度 à 所有结点度中的最大值(Max{各结点的度})
- 树的深度(或高度) à 指所有结点中最大的层数(Max{各结点的层次})
上图中的结点数= 13,树的度= 3,树的深度= 4
4.2二叉树概念
4.2.1二叉树基本概念
- 定义:
n(n≥0)个结点的有限集合,由一个根结点以及两棵互不相交的、分别称为左子树和右子树的二叉树组成 。
- 逻辑结构:
一对二(1:2)
- 基本特征:
- 每个结点最多只有两棵子树(不存在度大于2的结点);
- 左子树和右子树次序不能颠倒(有序树)。
- 二叉树性质
- 性质1: 在二叉树的第i层上至多有2^(i-1)个结点(i>0)
- 性质2: 深度为k的二叉树