# 二叉樹課后題P154
## s1
二叉樹中度為0的結點數為30,度為1的節點數為20,總結點數?
設二叉樹度為0的結點數為N0
度為1的結點數為N1
度為2的結點數位N2
結點總數為T
所以有
T = N0 + N1 + N2 (1) (依據結點)
T = N1 + 2*N2 + 1 (2)(依據分支)
(每個N2節點有2個分支,每個N1結點有1個分支,前面相加為分支數,求結點數還要加上根結點)
(2)-(1)得N2 = N0 - 1
解出N0、N1、N2即可
## s2
設一棵完全二叉樹有128個結點,則該完全二叉樹的深度為____, 有____個葉子結點
深度為8.
因為2^7 - 1 < 128 < 2^8 - 1
有64個葉子結點.
因為 (128+1)/ 2 = 64 (按整型計算)
### 知識點回顧
高度為h的二叉樹中結點最多為2^k-1個
## s3
設有n個結點的完全二叉樹,如果按照從自上到下,從左到右從1開始順序編號,則第i個結點的雙親結點編號為___, 右孩子結點的編號為____
i/2 2*i+1
1
2 3
4 5 6 7
## s4
設二叉樹中結點的兩個指針域分別為lchild和rchild,則判斷指針變量p所指向的結點為葉子結點的條件是________.
p->lchild==NULL&&p->rchild==NULL ??
## s5
設一棵完全二叉樹的順序存儲結構中存儲數據元素為ABCDEF,則該二叉樹的后序遍歷序列為____,中序遍歷序列為______
DBEAFC
DEBFCA
## s6
設一棵二叉樹的前序序列為 ABC ,則有 1_ 種不同的二叉樹可以得到這種序列
5

## s7
設二叉樹的先序遍歷序列和后序遍歷序列正好相反,則該二叉樹滿足的條件是
高度等於其結點數
先序遍歷:根左右;后續遍歷:左右根
要滿足題意,則只有
根左<----->左根
根右<--------->右根
所以高度一定等於節點數
## s8
假設用於通信的電文僅由8個字母組成,字母在電文中出現的頻率分別為:
0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10
請為這8個字母設計哈夫曼編碼,要求畫出哈夫曼樹。

編碼:0.19:00 0.21:01 0.02:10000 0.03:10001 0.06:1001 0.07:1010 0.10:1011 0.32:11
## s9
設哈夫曼樹中共有n個結點,則該哈夫曼樹中有幾個度數為1的結點
0個
## s10
含有n個結點的二叉樹采用二叉鏈表存儲時,空指針域的個數為( )
n個結點的二叉鏈表中,有2n個鏈域,
每一條非空鏈域對應一條樹枝,
而樹支的個數為n-1,
因此,空節點個數為2n-(n-1)=n+1
