您的位置:首页 > 其它

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

2014-06-11 15:24 363 查看
1. 哈夫曼编码。对教材P167中习题5.18,思考并完成问题a-d。

(下表给出了英文字母(包括用于分割单词的空格)在某文集中的出现频率。

空格 18.3% | r 4.8% | y 1.6%

e 10.2% | d 3.5% | p 1.6%

t 7.7% | l 3.4% | b 1.3%

a 6.8% | c 2.6% | v 0.9%

o 5.9% | u 2.4% | k 0.6%

i 5.8% | m 2.1% | j 0.2%

n 5.5% | w 1.9% | x 0.2%

s 5.1% | f 1.8% | q 0.1%

h 4.9% | g 1.7% | z 0.1%

(a)这些字母的最优Huffman编码是什么?



空格:111

a:1010

b:100101

c:00101

d:10111

e:010

f:110100

g:100110

h:0001

i:0111

j:1101110011

k:11011101

l:10110

m:110110

n:0110

o:1000

p:100100

q:1101110001

r:0000

s:0011

t:1100

u:00100

v:1101111

w:110101

x:1101110010

y:100111

z:1101110000

(b)每个字母的编码平均需要多少位?

(3*2+4*8+5*4+6*7+7+8+10*4)/27≈6,即每个字母的编码平均需要6位

(c)假设我们对以上的频率表计算其熵H您认为该值会比以上的计算结果大还是小?为什么?

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

(d)您是否认为这就是英文文本压缩的下线?除了字母及其出现频率,还有哪些英文本身的特征需要在文本压缩中被重点考虑?
不是,因为还可以把前缀,后缀或者整个单词的本身组合起来考虑。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: