第六周作业1-利用哈夫曼编码英文字母表
来源:互联网 发布:php判断数据库是否存在 编辑:程序博客网 时间:2024/04/29 17:35
课本167页的习题5.18
5.18:下表给出了英文字母(包括用于分割单词的空格)在某文集中的出现的频率
空格 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)答:结果肯定比熵要大,因为在计算熵的时候允许有小数个比特,
而实际上每个字符的编码长度都必需为整数。
(d)答:可以考虑整个英文出现的概率,或者从词根上来考虑。
- 第六周作业1 -- 利用哈夫曼编码英文字母表
- 第六周作业1 -- 利用哈夫曼编码英文字母表
- 第六周作业1--利用哈夫曼编码英文字母表
- 第六周作业1-利用哈夫曼编码英文字母表
- 第六周作业1------利用哈夫曼编码英文字母表
- 第六周作业1 -- 利用哈夫曼编码英文字母表
- 第六周作业——利用哈夫曼编码英文字母表
- 第六周作业——利用哈夫曼编码英文字母表
- 第六周作业——利用哈夫曼编码英文字母表
- 利用哈夫曼编码英文字母表(第六周作业)
- 第六周作业——利用哈夫曼编码英文字母表
- 第六周作业--利用哈夫曼编码英文字母表
- 第六周作业--利用哈夫曼编码英文字母表
- 第六周作业—利用哈夫曼编码英文字母表
- 第六周作业——利用哈夫曼编码英文字母表
- 第六周作业——利用哈夫曼编码英文字母表
- 第六周作业—利用哈夫曼编码英文字母表
- 第六周作业--利用哈夫曼编码英文字母表
- SAP ABAP 开发中常用的方法总结
- ASP.NET是如何在IIS下工作的
- 简化 max 定义
- 从RGB色转为灰度色算法
- Flex DataGrid 日期格式转换
- 第六周作业1-利用哈夫曼编码英文字母表
- git merge,rebase和*(no branch)
- 如何构建高性能web站点之:分布式缓存
- java poi对excel的操作详解
- c++初学者
- 两语句功能相同,为何结果不相同?
- pthread_create用法
- 并行支持向量机算法的知识点之乔里斯基分解(Cholesky factorization)
- java基础24_多线程