已知 8 个英文字母的相对频率如下表所示。采用 2 元前缀码,求传输字符最 少的 2 元前缀码,并求传输 10 n (n2)个按所述比例出现的八个字符需要多少个二 进制数字?若用等长的(长为 3)码字传输需要多少个二进制数字? 字母 C D E F K L U Z 频率 32 42 120 24 7 42 37 2
时间: 2024-03-18 08:42:13 浏览: 9
根据香农定理,传输字符最少的2元前缀码应该是基于相对频率构造的哈夫曼树,然后使用左子树为0,右子树为1的方式构造前缀码。根据给定的频率,可以得到以下哈夫曼树:
```
304
/ \
119 185
/ \ / \
C 43 D 142
/ \ / \
F 19 L 123
/ \ / \
K 5 U 98
/ \
E Z
```
根据这棵哈夫曼树构造的前缀码如下:
```
C: 111101
D: 00
F: 111100
K: 1110
L: 110
U: 10
E: 01
Z: 11111
```
根据相对频率,传输10n个字符所需的二进制数字为:32*10n*6 + 42*10n*2 + 120*10n*5 + 24*10n*2 + 7*10n*6 + 42*10n*5 + 37*10n*4 + 2*10n*5 = 1880n
如果使用等长的码字传输,每个字符需要3个二进制数字,则传输10n个字符需要的二进制数字为:8*10n*3 = 240n
因此,使用2元前缀码传输字符更加节省传输的二进制数字。