×

前缀编码怎么判断?

admin admin 发表于2022-06-20 12:15:32 浏览109 评论0

抢沙发发表评论

1.若要设计长短不等的编码,则其中的任意一个字符的编码都必须不是另一个字符的编码的前缀,这种编码称为前缀编码。

2.判断一个编码是不是前缀编码,可以根据定义,即看每个字符的编码是不是和其他字符编码的前边的数字一样。

3.我们要挨个判断每个字符,从A开始。A的编码为0,只有一个数字。那么在B,C,D的编码中从前往后看一个数字分为1,1,1。1不等于0。则A的编码符合前缀编码要求。

4.然后判断B的编码是否是其他字母的编码的前缀。B的编码10明显不是C,D编码的前缀,所以B的编码符合前缀编码要求。

5.接下来判断C的编码。C编码为110,明显不是一位编码和两位编码的前缀。对于D编码111来说,从前到后并不包含110。所以C的编码符合前缀编码要求。

6.最后判断D的编码。同理,C编码从左数的头三个数字都不等于111,那两个连位数都不够的编码就更甭提了。所以D的编码符合前缀编码要求。最终,这四个编码属于前缀编码。