1

我正在努力实现霍夫曼压缩的有效实现,但它需要以一种独特的方式完成:我需要找到一种方法将我的霍夫曼树写入我的编码,然后再将其传递给解码器,对于这个特定的项目我们只允许将一个指针传递给解码器。我无法传递树本身,因为那样我将无法传递编码。

有没有人有一种在我的霍夫曼编码中有效地存储我的霍夫曼树的好方法?

我目前正在使用 C++ 实现这一点。

4

2 回答 2

2

您不能将 Huffman 树存储在Huffman编码中 - 解码器必须在解码之前知道它。

您必须序列化您的霍夫曼树并将其添加到您的霍夫曼编码数据中。您的解码器必须在解码之前反序列化树。

于 2015-05-13T17:44:09.077 回答
0

您不想或不需要传输树。您需要发送的只是每个符号的位数。由此,您可以在两端构建相同的规范代码。

于 2015-05-13T18:43:24.257 回答