如何使用给定频率的霍夫曼码获取字母表
how to obtaining alphabet using Huffman Code for given frequency
我是一名学生,我正在尝试解决这个问题。但我无法理解从哪里开始的问题?
考虑需要用哈夫曼算法得到频率为fp,fq,fr的字母表{p,q,r}的编码。以下各例给出频率fp,fq,fr能得到指定码的例子,如果不能得到给定码,是什么原因?
(a) p = 0, q = 10, r = 11
(b) p = 0, q = 1, r = 00
(c) p = 10, q = 01, r = 00
我明白了。为了解释,我将使用下图
在第一棵树中
a = 0
b = 11
c = 11
并且可以看到第一个树是正确的,可以获取代码
在第二棵树中
a = 0
b = 1
c = 00
存在重复前缀(a 和 c '0' 重复)。你可以在第二棵树上看到它。所以无法获取给定的代码。
在第三棵树中
a = 10
b = 01
c = 00
第三棵树也是正确的,没有重复的前缀。可以获得代码。
我是一名学生,我正在尝试解决这个问题。但我无法理解从哪里开始的问题?
考虑需要用哈夫曼算法得到频率为fp,fq,fr的字母表{p,q,r}的编码。以下各例给出频率fp,fq,fr能得到指定码的例子,如果不能得到给定码,是什么原因?
(a) p = 0, q = 10, r = 11
(b) p = 0, q = 1, r = 00
(c) p = 10, q = 01, r = 00
我明白了。为了解释,我将使用下图
在第一棵树中
a = 0
b = 11
c = 11
并且可以看到第一个树是正确的,可以获取代码
在第二棵树中
a = 0
b = 1
c = 00
存在重复前缀(a 和 c '0' 重复)。你可以在第二棵树上看到它。所以无法获取给定的代码。
在第三棵树中
a = 10
b = 01
c = 00
第三棵树也是正确的,没有重复的前缀。可以获得代码。