如何将频率 table 存储在霍夫曼编码中?
How is a frequency table stored in Huffman coding?
所以我正在研究霍夫曼编码,这是一个非常容易理解的算法,只是我对一件事感到好奇。鉴于"a Huffman tree that omits unused symbols produces the most optimal code lengths",我很好奇霍夫曼树的频率table是否计入编码消息的总长度?我想这个问题本身可以归结为频率 table 的存储方式。它是编码消息的一部分,还是保存为单独的文件?
是的,除非双方同意预先确定的码本,否则消息中必须包含频率table(或足以在接收端构建解码树的等效信息)。
Google Canonical Huffman code
以巧妙的方式减少此信息的大小。
所以我正在研究霍夫曼编码,这是一个非常容易理解的算法,只是我对一件事感到好奇。鉴于"a Huffman tree that omits unused symbols produces the most optimal code lengths",我很好奇霍夫曼树的频率table是否计入编码消息的总长度?我想这个问题本身可以归结为频率 table 的存储方式。它是编码消息的一部分,还是保存为单独的文件?
是的,除非双方同意预先确定的码本,否则消息中必须包含频率table(或足以在接收端构建解码树的等效信息)。
Google Canonical Huffman code
以巧妙的方式减少此信息的大小。