英文字母表的哈夫曼树编码

题目如下:

英文字母表的哈夫曼树编码_第1张图片


构建的哈夫曼树(文件下载链接:visio文件,jpg文件):

英文字母表的哈夫曼树编码_第2张图片


(a)字母的最优哈夫曼编码(不知道是不是题目有问题,总的概率加起来大于1)

空格:111
a:1010
b:100100
c:00101
d:10111
e:010
f:110100
g:100111
h:0001
i:0111
j:1101100010
k:11011001
l:01101
m:110111
n:0110
o:1000
p:100101
q:1101100000
r:0000
s:0011
t:1100
u:00100
v:1101101
w:110101
x:1101100011
y:100110
z:1101100001

(b)平均需要:3*18.3%+3*10.2%+4*7.7%+4*6.8%+......+10*0.1%+10*0.1%=4.201(位)


(c)上面的结果肯定比熵(约为 4.139)要大,因为在计算信息熵的时候允许有小数个比特,而实际上每个字符的编码长度都必需为整数。


(d)不是,比如可以把特定的前缀、后缀或者是整个单词组合起来考虑。



你可能感兴趣的:(英文字母表的哈夫曼树编码)