霍夫曼算法适用于什么类型的数据?

时间:2013-04-08 04:58:48

标签: algorithm encoding huffman-code

我一直在阅读这个算法,我理解构建树,以及在树过程结束时输出应该是什么。所有示例都是文本文件,但对于其他类型的文件,您需要将其作为二进制文件读取吗?如果你这样做,你如何选择一个符号的位数?霍夫曼的算法适用于任何类型的文件?如果我不应该关注哪种类型的文件?

我是这个主题的新手,所以我希望有人可以为我清理一下。

1 个答案:

答案 0 :(得分:0)

您可以选择每个符号应包含多少位,并且您选择的位数将影响您根据所压缩数据的结构而变化的压缩量。根据H F Smith(1987) Data Structures:Form and Function ,pp.399-400,例如:

  

......除非我们这样做,否则这种方法的净节省可能不会很大   处理一些相当少的消息集合   比其他人更有可能。通常可以获得一个   改进的冗余压缩[通过霍夫曼编码]   考虑消息字符串的较大部分而不仅仅是个人   符号。