1

我有以下价值观

Event  Probability   
 A      0.3  
 B      0.3 
 C      0.13     
 D      0.12      
 E      0.1  
 F      0.05    

我的树看起来像这样

                                 [1]
                              /0     \1
                            [.4]    [.6]
                          0/   \1    /0   \1
                       [.27][.13] [.3] [.3]
                     0/   \1
                  [.15]  [.12]
                 0/    \1
                [.1]  [.05]

我很抱歉代表不好,但这是我能做的最好的。

我在网上关注这个例子,但我的价值观不一样。我无法理解我做错了什么?如果有人可以指导我正确的方向。

示例: http: //www.math.upenn.edu/~deturck/m170/wk7/lecture/huffman/huffman.html

我的价值观是这样的:

A = 10 
B = 11

但在示例中,A = 00 和 B = 01 的值

4

1 回答 1

1

我认为这里一个可能的问题是在最左边的子树中。您正确地将概率为 0.05 和 0.10 的树合并在一起,形成了净概率为 0.15 的树。然而,此时可用的树有概率

0.3    A
0.3    B
0.15   EF
0.13   C
0.12   D

霍夫曼编码算法总是选择总概率最低的两棵树合并在一起,所以下一步是合并 C 和 D。从你的树看来,你似乎合并了 EF 和 D,这是不正确的。

尝试使用这种其他方法进行合并,看看是否能解决问题。

希望这可以帮助!

于 2013-10-07T18:27:12.903 回答