霍夫曼减压

时间:2012-11-21 17:15:27

标签: compression huffman-code

我正在尝试实现函数,该函数将决定给定的树是否与压缩文件匹配,“尝试”很少“误传”我只是不知道如何实现这样的功能。 我只是想弄清楚,因为有时压缩文件的字节可以匹配来自其他文件的树,欢迎任何想法。

1 个答案:

答案 0 :(得分:1)

我不明白你要问的是什么。

我建议阅读霍夫曼压缩 - 也许是维基百科:Huffman coding以及它链接到的一些页面。 然后编辑您的问题以描述您想要了解的内容。 你能用一个实际的问号吗?

霍夫曼压缩算法通常会生成压缩文件,其中包含“头”,其中包含重建树所需的所有信息,以及包含压缩比特流的“主体”。

如果你将一个压缩文件中的“header”与其他压缩文件的“body”拼接在一起,那么解压缩程序就无法判断出有什么问题 - 解压缩程序会很乐意产生“解压缩”的乱码。

每个可能的比特序列都可以被每个可能的霍夫曼树“解码”。 但是某些压缩比特流的正确的原始文件只能由一个正确的霍夫曼树生成。

通常不可能只给出一个“主体”压缩比特流和一个“标题”(或从该标题重建的完整霍夫曼树),它们是真实的身体还是单个真实的真实标题压缩文件,或者一个是来自一个压缩文件而另一个来自其他压缩文件。