【发布时间】:2014-08-10 18:59:30
【问题描述】:
我创建了一个程序来读取文件并将其逐个字符编码为可变长度的二进制代码。前任。最常见的字符是 110,下一个常见的字符是 0010,等等。然后我将整个二进制代码放入一个文本文件中。所以代码看起来像 11010011001110000110001010110110... 并且它继续。我将如何将二进制编码解码回字符?
【问题讨论】:
-
您可能还需要 Huffman 树。 ;-)
-
是的,您需要以某种方式将解码密钥与编码数据一起传输。处理此问题的几种方法,可以作为数据的一端或另一端的单独结构,或者作为内联数据,其中每个新代码在第一次使用时被识别。
-
一旦您可以恢复字符代码映射(通常通过使用规范霍夫曼代码并仅存储代码长度来完成),我会建议基于表的解码。
标签: c binary binary-data huffman-code