霍夫曼編碼(Huffman Coding)是一種無失真資料壓縮的常用演算法,假若我們使用霍夫曼方法來編碼 60 個字母的字串,其中每個字母以及出現次數分別為:A/11, B/8, C/20, D/17, E/4。請問編碼完後共需多少位元來儲存這個字串?
A106
B124
C132正確答案
D180
答案與詳解
正確建樹:E(4)、B(8) 合併為 12;再與 A(11) 合併為 23;C(20)、D(17) 合併為 37;最後 23+37=60。碼長:C=2、D=2、A=2、B=3、E=3。總位元 = 20×2+17×2+11×2+8×3+4×3 = 40+34+22+24+12 = 132。
