1 树的概念
1.1 树的定义
树是n (n≥0) 个结点的有限集合。
- 若
n = 0,称为空树。 - 非空树满足:
- 有且仅有一个特定的称为**根(Root)**的结点;
- 除根结点以外的其余结点可以划分为 m (m≥0) 个互不相交的有限集合 \(T_1,T_2,...,T_m\),其中每一个集合本身又是一棵树,称为根的子树 (SubTree)。
递归定义:树由根 + 若干棵互不相交子树构成。 通俗理解:没有环、连通、分层的图结构。
1.2 基本术语
1.2.1 结点间的关系描述
- 父结点(双亲结点):一个结点的子树的根叫该结点的孩子;该结点就是孩子的父结点。
- 孩子结点:某个结点子树的根。
- 兄弟结点:同一个父结点的多个孩子互为兄弟。
- 祖先结点:从根到该结点路径上所有结点,都是该结点的祖先。
- 子孙结点:一个结点的所有子树中的全部结点,都是它的子孙。

1.2.2 结点和树之间的属性描述
- 结点的度 :结点拥有的子树个数。
- 树的度:树内各结点的度的最大值。
- 叶子结点(终端结点):度为 0 的结点,没有孩子。
- 分支结点(非终端结点):度大于 0 的结点。
- 结点的层次:根为第 1 层;根的孩子第 2 层,以此向下递推。
- 树的高度 / 深度:树中结点的最大层次。
1.3 树的性质
1.3.1 性质一:树中的结点数 = 所有结点的度数之和 + 1
1.3.2 性质二:m 叉树中第 i 层上至多有? 个结点


