设在一篇文章中各字母出现的频率为:a:83 b:14 c:28 d:38 e:131 f:29 g:20
时间: 2023-05-25 15:01:44 浏览: 45
h:61 i:71 j:2 k:8 l:47 m:27 n:74 o:80 p:19 q:1 r:60 s:63 t:93 u:27 v:13 w:16 x:1 y:18 z:1。请问这篇文章中一共有多少个字符?
A:将各字母的出现次数累加起来,得到总字符数为:83+14+28+38+131+29+20+61+71+2+8+47+27+74+80+19+1+60+63+93+27+13+16+1+18+1=852。
相关问题
4.设在一篇文章中各字母出现的频率为: a :83: b :14: c :28: d :38: e :131: f :29: g :20: h :53. 给出其定长编码和哈夫曼编码方案,并计算分别需要多少位字符对该文章编码。
定长编码方案:每个字母都分配一个相同的长度为 8 位的编码。
需要编码的总字符数 = 83 + 14 + 28 + 38 + 131 + 29 + 20 + 53 = 396
编码长度 = 8 位/字符
总共需要的位数 = 396 x 8 = 3168 位
哈夫曼编码方案:
首先,将各字母按出现频率从小到大排序,构建哈夫曼树:
接着,从哈夫曼树根节点开始,给左边的分支标上 0,给右边的分支标上 1,依此沿着树向下,给每个字母确定哈夫曼编码。最后,可以得到如下的哈夫曼编码:
a:1111
b:110110
c:101010
d:100100
e:0
f:101011
g:11010
h:1110
按照上表的哈夫曼编码,对文章进行编码:
需要编码的总字符数 = 396
总共需要的位数 = 83 x 4 + 14 x 6 + 28 x 6 + 38 x 6 + 131 x 1 + 29 x 6 + 20 x 5 + 53 x 4 = 2116 位
因此,使用哈夫曼编码方案可以将文章编码成 2116 位字符。相比较定长编码方案,哈夫曼编码方案可节省 1052 位字符,编码效率更高。
假设同于通讯的电文仅由6个字母A B C D E F 组成,字母在电文中出现的频率为:0.07,0.19,0.23,0.16,0.32,0.03。请为这六个字母设计哈夫曼编码
首先根据频率从小到大排序:
| 字母 | 频率 |
| ---- | ---- |
| F | 0.03 |
| A | 0.07 |
| D | 0.16 |
| B | 0.19 |
| C | 0.23 |
| E | 0.32 |
然后按照哈夫曼编码的步骤进行编码:
1. 将最小频率的两个字母 F 和 A 合并为一个节点,频率为 0.03+0.07=0.1。
2. 将下一个最小频率的字母 D 合并进去,频率为 0.1+0.16=0.26。
3. 将下一个最小频率的字母 B 合并进去,频率为 0.26+0.19=0.45。
4. 将下一个最小频率的字母 C 合并进去,频率为 0.45+0.23=0.68。
5. 最后将剩余的字母 E 合并进去,频率为 0.68+0.32=1。
6. 对于每个节点,左子树编码为 0,右子树编码为 1。
得到的哈夫曼编码如下:
| 字母 | 频率 | 编码 |
| ---- | ---- | ---- |
| F | 0.03 | 1110 |
| A | 0.07 | 1111 |
| D | 0.16 | 110 |
| B | 0.19 | 10 |
| C | 0.23 | 0 |
| E | 0.32 | 11 |
因此,电文的哈夫曼编码为:0 1 1 1 0 10 0 11 11 10 1111 0 1110。