树的定义
- 图论定义:没有回路的连通图就是树。
- 数据结构:由n(n>=0)个有限节点组成一个具有层次关系的集合。当n=0时,称为空树。
基本术语
- 祖先结点:
- 双亲结点:
- 兄弟结点:
- 孩子结点:
- 结点的度:该结点的孩子个数。树中结点的最大度数称为树的度。
- 分支结点:度大于0的结点。
- 叶子结点:度为0的结点(没有孩子结点)。
树的性质
- 树中的结点数等于所有的度数加1。
- 度为m的树中第i层最多有m(i-1)个结点。(等比数列)
- 高度为h的m叉树至多有(mh-1)/(m-1)个结点。(等比数列求和)
- 具有n个结点的m叉树的最小高度为 ⌈ l o g m ( n ( m − 1 ) + 1 ) ⌉ \lceil log_m(n(m-1)+1) \rceil ⌈logm(n(m−1)+1)⌉。
性质4证明:求最小高度肯定是完全m叉树,我们设最小高度为h,则由性质3可以得到两个不等式:
m h − 1 − 1 m − 1 < n < = m h − 1 m − 1 \frac{m^{h-1}-1}{m-1}<n<=\frac{m^h-1}{m-1} m−1mh−1−1<n<=m−1mh−1
化简即可得到性质4.