单义代码/唯一可译码 Uniquely decodable code
对多个码字(w1,w2,...wn)任意组合成的序列再进行分割,只能唯一地分割成一个个码字.
单义代码不需要同步码 synchronous code
例如: 码字集1:{1,10,00}
码元序列:1100010101
码字集1是单义的
码字集2:{1,01,00,110}
码字集2是非单义的
常用的判别唯一可译码的方法
使用A.A.Sardinas和G.W.Patterson设计的判断法,其步骤如下:
首先,观察码字集中的所有码字,如果码字Wi是码字Wj的前缀,则将响应的后缀作为一个尾随后缀码放入集合Fi中;
其次,考察C和Fi两个集合,如果存在Wm属于C是Wn属于Fi的前缀,或者Wn属于Fi是Wm属于C的前缀,则将相应的后缀作为尾随后缀码放入到集合Fi+1当中;
再次,令F=Fi1UFi2UFi3......即F为码C的尾随后缀集合;
最后,若F中出现了C中的元素,则可以判断码C不是唯一可译码,若F中没有出现C中的元素,则认为码C是唯一可译码.
时间: 2024-10-09 20:15:33