Computer science 如何利用哈夫曼码获得给定频率的字母表
我是一名学生,我正在努力解决这个问题。但我很难理解从哪里开始的问题 考虑到有必要使用哈夫曼算法获得字母{p,q,r}的编码,其频率为fp,fq,fr。在以下每种情况下,给出一个频率为fp,fq,fr的示例,该频率将产生指定的代码,如果无法获得给定的代码,原因是什么Computer science 如何利用哈夫曼码获得给定频率的字母表,computer-science,Computer Science,我是一名学生,我正在努力解决这个问题。但我很难理解从哪里开始的问题 考虑到有必要使用哈夫曼算法获得字母{p,q,r}的编码,其频率为fp,fq,fr。在以下每种情况下,给出一个频率为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) 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
第三棵树也是正确的,没有重复的前缀。可以获取代码