考虑字符串abbccddeee。必须为字符串中的每个字母分配一个满足以下属性的二进制代码:
- 对于任何两个字母,分配给一个字母的代码不得为分配给另一个字母的代码的前缀。
- 对于相同频率的任何两个字母,将以字典顺序中较早出现的字母分配一个代码,该代码的长度最多为分配给另一个字母的代码的长度。
在满足上述两个属性的所有二进制代码分配中,编码字符串的最小长度是多少?
(A) 21
(B) 23
(C) 25
(D) 30答案: (B)
解释:
Alphabet Frequency
a 1
b 2
c 2
d 2
e 3
必填答案,
= 1×3 + 2×3 + 3×2 + 2×2 + 2×2
= 23
正确的选项B
这个问题的测验