【发布时间】:2021-03-15 04:42:24
【问题描述】:
Deflate 算法中的 Huffman 代码树必须是完整的树吗?通过完整树,我的意思是每个叶节点必须始终代表一个符号。换句话说,最后一个代码最长的符号将被赋值为全1。
举一个极端的例子:给定 286 个符号,每个符号都用 15 位代码编码——这在一般的霍夫曼树编码中是可能的。然而,在这种情况下,有 2^15 - 286 个叶节点未分配/使用。 Deflate 允许吗?我的印象是 Deflate 不允许这样做,并且树必须是完整的。这是真的吗?
【问题讨论】: