繁体   English   中英

除了霍夫曼树以外,是否还有其他树用于最佳前缀代码? 它的高度会和霍夫曼树的高度一样吗?

[英]Is there any tree for optimal prefix code other than Huffman tree? Will the height of that be the same as that of Huffman tree?

我知道霍夫曼树是一种用于最佳前缀代码的树,但是除了霍夫曼树之外 ,是否还有其他用于最佳前缀代码的 如果有这样的树木, 它们的高度会一样吗? 非常感谢!

通过采用两个当前最低概率的符号并将其组合来递归构造霍夫曼树。

如果存在其他具有相同低概率的符号,则可以将这些符号进行组合。

这意味着最终树不是唯一定义的,并且存在多个具有不同高度的最佳前缀代码。

例如,考虑以下符号和概率:

A 1/3
B 1/3
C 1/6
D 1/6

可以编码为:

A 0
B 10
C 110
D 111

要么

A 00
B 01
C 10
D 11

两种编码的每个符号的预期位数均等于2,但高度不同。

但是,所有最佳前缀码都可以由霍夫曼算法构造,以便针对概率关系进行适当的排序选择。

在霍夫曼编码问题的约束内,即每个符号由唯一前缀的比特序列表示,那么恰好可以实现一个最优的总比特数,霍夫曼算法可以实现这一点。 还有其他方法可以得出相同的答案。

正如Peter de Rivaz所指出的那样,在某些特殊情况下,霍夫曼算法在某些步骤中有多个选择,可以选择两种最小概率的代码集,这可能会导致不同的树。 因此,您提到的树的高度/深度不是唯一的,但是总位数(每个符号的位长之和乘以其概率加权)始终是相同的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM