Chapter7-树
7.1 树的重要概念
直接看最关键的概念:树的高度和深度、节点的高度和深度。
7.1.1 树的深度和高度
这俩不用想,计算出来的结果是一样的,因为是对于“树”这个概念来进行计算的。有公式:
Depth(Tree)=Height(Tree)=叶子结点所在的最大层数
Depth(Tree) = Height(Tree) = 叶子结点所在的最大层数
Depth(Tree)=Height(Tree)=叶子结点所在的最大层数
7.1.2 节点的深度和高度
深度正如其名,反映的是从表面到“水下面”的某一个地方的距离。高度,反映的是从一个表面到“天空”上面的某一个点的距离。那么就可以很好的得出下面这一棵树的各个节点的深度和高度了(这里引用下@Mr-Cat伍可猫的博客的图):

| 节点 | 深度 | 高度 |
|---|---|---|
| 8 | 1 | 4 |
| 3 | 2 | 3 |
| 10 | 2 | 3 |
| 1 | 3 | 2 |
| 6 | 3 | 2 |
| 14 | 3 | 2 |
| 4 | 4 | 1 |
| 7 | 4 | 1 |
| 13 | 4 | 1 |
7.2 二叉树
7.2.1 完全二叉树的定义

只有当优先把左节点排满的树才是完全二叉树:

7.2.2 二叉树的性质
性质1:在二叉树上最多有2i−12^{i - 1}2i−1个节点。
性质2:深度为k的二叉树上最多含有2k−12^k - 12k−1个节点。
性质3:对任意二叉树,若它包含n0n_0n0个叶子节点、n2n_2n2个度为2的节点,则必存在关系式:n0=n2+1n_0 = n_2 + 1n0=n2+1
性质4:具有n个节点的完全二叉树的深度为⌊log2n⌋+1\lfloor \log_2 n \rfloor +1⌊log2n⌋+1或⌈log2(n+1)⌉\lceil log_2 (n + 1) \rceil⌈log2(n+1)⌉
性质5:假设一棵完全二叉树有n0n_0n0个叶子节点,则这棵完全二叉树最多有2n02n_02n0个节点。例如一棵完全二叉树有665个节点,则该二叉树有665 / 2 = 332.5 ≈ 333 个叶子节点。
性质6:具有n个节点的完全二叉树一共有1n+1⋅C2nn\frac{1}{n + 1}·C_{2n}^nn+11⋅C2nn种
3794

被折叠的 条评论
为什么被折叠?



