第六周作业--利用哈夫曼编码英文字母表
2014-04-18 12:44
369 查看
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: 10101 x:1101110010
y:100111 z:1101110000
(b)
(3*2+4*8+5*4+6*7+7+8+10*4)/27≈6
(c)
熵约为5.74,结果肯定比熵要大,因为在计算熵的时候允许有小数个比特,而实际上每个字符的编码长度都必需为整数。
(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: 10101 x:1101110010
y:100111 z:1101110000
(b)
(3*2+4*8+5*4+6*7+7+8+10*4)/27≈6
(c)
熵约为5.74,结果肯定比熵要大,因为在计算熵的时候允许有小数个比特,而实际上每个字符的编码长度都必需为整数。
(d)您是否认为这就是英文文本压缩的下线?除了字母及其出现频率,还有哪些英文本身的特征需要在文本压缩中被重点考虑?
还可以考虑英文出现的概率等等。
相关文章推荐
- 排序算法大全之计数排序
- GDI泄露问题(1)
- <华为的世界>读后感
- email三种编码标准
- one 0f dependencies couldnot be loaded about sharepoint 2010 on windows 2012 / 2008 server
- iOS 7 新特性之ViewController切换
- 混排算法与吉尔比·贝克问题
- 接活网站
- 第9讲的一个问题
- jQuery.unique引发一个血案
- Java性能的问与答:概述以及Cpu调优
- Ganymed SSH-2 for Java系列5之删除远程服务器上的目录(补充说明)
- 变量命名规范--匈牙利命名法,骆驼命名法,帕斯卡命名法
- slidemenu
- TOP 10 PROGRAMMING FONTS
- Ganymed SSH-2 for Java系列5之删除远程服务器上的目录
- 为什么使用面向对象技术与接口技术
- Cocos2d-x旧引擎目录结构
- 提高开发效率的十大工具(转)
- nyoj 695 Judging Filling Problems