普考-資訊處理計算機概要111 年第 35 題單選題
一個字母表 A={a0,a1,a2,a3},其中 a0 的出現機率 0.5,a1 的出現機率 0.25,a2 的出現機率 0.125,a3 的出現機率 0.125,若以霍夫曼編碼(Huffman Coding)得到 A 字母表的碼簿(codebook),下列何者可為正確答案?
Aa0=00,a1=01,a2=10,a3=11
Ba0=0,a1=10,a2=110,a3=111正確答案
Ca0=0,a1=01,a2=011,a3=0111
Da0=0,a1=1,a2=00,a3=11
B正確答案
機率越高碼長越短,Huffman 建樹後得 a0=0, a1=10, a2=110, a3=111,平均碼長 1.75 bits。
為什麼答案是 B
符合 Huffman 演算法:先合併 a2+a3 (0.25),再合併 a1+{a2,a3} (0.5),最後與 a0 合併。碼長 1,2,3,3 對應機率 0.5,0.25,0.125,0.125,且滿足前綴碼性質。
考點:固定長度編碼考點:Huffman 正解考點:違反前綴碼