从这些频率开始:
A:7 F:6 H:1 M:2 N:4 U:5
在后面的步骤中,我有5 6 7 7,其中7之一是“ A”。我选择哪个7个分支为0或1是任意的。
那么我如何获得唯一可解码的代码字?
答案 0 :(得分:1)
您需要将代码发送到接收器,而不是频率。您可以将0
和1
任意分配给所有分支,然后在编码符号本身之前发送每个符号的代码。来自同一组频率的霍夫曼码可能很多。
更通常地,仅发送每个符号的以比特为单位的代码长度。在这种情况下,它们是A:2 F:2 H:4 M:4 N:3 U:2
。然后在两端仅使用canonical code来决定长度。在这种情况下,从0
开始,规范代码为:
A: 00
F: 01
U: 10
N: 110
H: 1110
M: 1111
等长度的代码按字典顺序分配给这些符号。请注意,不需要构建的霍夫曼树。所需要做的就是每个符号的位数。