第六周作业1——利用哈夫曼编码英文字母表

来源:互联网 发布:孙骁骁小葡萄关系 知乎 编辑:程序博客网 时间:2024/05/16 04:27

1. 哈夫曼编码。对教材P167中习题5.18,思考并完成问题a-d。

根据题目中给出的已知条件,可以画出这些英文字母的哈弗曼树,如下如所示:


(a)这些字母的最优Huffman编码分别是:

a:0111

b:010001

c:10001

d:01101

e:111

f:000010  

g:010011  

h:1011  

i:1101  

j:0000000011  

k:00000001  

l:01100  

m:000001  

n:1100  

o:0101  

p:010000  

q:0000000001  

r:1010  

s:1001  

t:0001  

u:10000  

v:0000001  

w:000011  

x:0000000010  

y:010010  

z:0000000000

(b) 每个字母的编码平均需要4.112位,取整数的话就是4-5位;

(c)   该值会比以上的结果还要大,因为计算熵的时候有小数位,而实际上每个字符的编码的长度都是整数;

(d)  可以把前缀、后缀或者整个单词的本身组合起来考虑。

0 0
原创粉丝点击