一道古老的英国信息学奥林匹克竞赛问题(3c)询问了只使用两个符号(即二进制)的字母表最小且不含歧义的编码方案是什么。据我所知,答案是130-每个字母需要5位来存储,因为2^4 < 26。字母表有26个字符,所以编码方案长度为5 * 26位。然而,评分方案规定可以使用124位。那么这个长度的编码方案是什么?
一道古老的英国信息学奥林匹克竞赛问题(3c)询问了只使用两个符号(即二进制)的字母表最小且不含歧义的编码方案是什么。据我所知,答案是130-每个字母需要5位来存储,因为2^4 < 26。字母表有26个字符,所以编码方案长度为5 * 26位。然而,评分方案规定可以使用124位。那么这个长度的编码方案是什么?
a - 0010
b - 0011
c - 0100
d - 0101
e - 0110
f - 0111
g - 10000
h - 10001
i - 10010
j - 10011
k - 10100
l - 10101
m - 10110
n - 10111
o - 11000
p - 11001
q - 11010
r - 11011
s - 11100
t - 11101
u - 11110
v - 11111
w - 00000
x - 00001
y - 00010
z - 00011
000
开头,则长度也为5。0000
和0001
是仅有的两个具有三个0
的符号。两个比特可以给你四个字符,其余部分是一个明确的编码方案 :)