假设字母a,b,c,d,e,f的概率分别为1 / 2、1 / 4、1 / 8、1 / 16、1 / 32、1 / 32。霍夫曼码的平均长度是多少?
(A) 3
(B) 2.1875
(C) 2.25
(D) 1.9375答案: (D)
说明:应用霍夫曼编码算法后,我们得到以下霍夫曼树。这样做的想法是通过首先选择尽可能少的字符。
The letters a, b, c, d, e, f have probabilities
1/2, 1/4, 1/8, 1/16, 1/32, 1/32 respectively.
1
/ \
/ \
1/2 a(1/2)
/ \
/ \
1/4 b(1/4)
/ \
/ \
1/8 c(1/8)
/ \
/ \
1/16 d(1/16)
/ \
e f
The average length = (1*1/2 + 2*1/4 + 3*1/8 + 4*1/16 + 5*1/32 + 5*1/32)
= 1.9375
这个问题的测验