树和二叉树
内容提纲
树的概念
树的定义
形式化定义:
对于树:T={D, R},D是包含n个结点的有限集合,当n=0时为空树,否则关系R满足以下条件:
- 有且仅有一个根节点
- 除根节点之外,每个节点有且仅有一个前驱结点
- 每个节点可以有零个或者多个后继结点
递归定义:
树是由n个结点组成的有限集合,其中:
- 如果n=0,则其为空树
- 如果n>0,则存在唯一一个根节点,该根节点的每一个孩子节点又作为一棵子树的根节点。
树的(逻辑)表示方法
- 树型表示法
- 文氏图表示法
- 凹入表示法
- 括号表示法
树的一些性质
- 树中的节点数=所有节点的度数之和+1
- 度为m的树中第i层上至多有 m i − 1 m^{i-1} mi−1个节点
- 高度为h的m次树至多有 m h − 1 m − 1 \frac {m^h-1}{m-1} m−1mh−1个节点
- 有n个节点的m次树的最小高度为 ⌈ \lceil ⌈ log m ( n ( m − 1 ) + 1 ) \log_m(n(m-1)+1) logm(n(m−1)+1) ⌉ \rceil