Computer science 如何利用哈夫曼码获得给定频率的字母表

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 我知道了。为了便于解释,

我是一名学生,我正在努力解决这个问题。但我很难理解从哪里开始的问题

考虑到有必要使用哈夫曼算法获得字母{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 = 0
b = 11
c = 11
并且你们可以看到第一棵树是正确的,可以获得代码

第二棵树

 a = 0
 b = 1
 c = 00
有一个重复的前缀(a和c“0”是重复的)。你可以在第二棵树上看到它。因此无法获得给定的代码

第三棵树

a = 10
b = 01
c = 00
第三棵树也是正确的,没有重复的前缀。可以获取代码