【发布时间】:2011-12-27 12:58:26
【问题描述】:
在插入所有实际压缩文件数据后,我正在尝试将 Huffman 树写入压缩文件。但是,我刚刚意识到一个问题,假设我决定一旦我所有的实际数据都写入文件,我将放入 2 个换行符,然后写入树。 这意味着,当我读回内容时,这两个换行符(或任何字符)是我的分隔符。问题是,实际数据完全有可能一个接一个地有 2 个换行符,在这种情况下,我的分隔符检查将失败。 我在这里举了两个换行符的例子,但是对于任何字符串都是如此,我可以通过将更长的字符串作为分隔符来颠覆这个问题,但这会产生两个不受欢迎的效果: 1. 压缩数据中偶然出现长字符串的可能性仍然很小。 2. 不必要地膨胀需要压缩的文件。
有人对如何将压缩数据与树数据分开有任何建议吗?
【问题讨论】:
标签: c++ huffman-code