如何正确绘制哈夫曼树

时间:2016-01-09 22:24:54

标签: huffman-code

我有以下符号和概率,我想为他们绘制一个霍夫曼树:

s + i

基于Huffman算法,我生成了以下树:

enter image description here

这是通过以下方式完成的:

  1. 加入n
  2. 加入1和~ + d
  3. 的结果
  4. 加入b + a
  5. 加入"Select Category"
  6. 加入3和4的结果
  7. 加入5和2的结果
  8. 我的问题: 是我做得对吗?如果是这样,最终概率(6的结果)是否大于1?

    是否可以接受

    由于

1 个答案:

答案 0 :(得分:1)

不,你做的不对,不,唯一可以接受的是最终的数字必须等于起始数的总和。

总和在您的情况下匹配,因为0.34 + 0.66 = 1,所以我不知道你为什么要这样做。顺便说一下,数字不一定是概率,因此总和不一定是1.数字通常是频率,即符号出现次数的计数。

至于你的树,你必须总是加入两个最小的数字,无论是叶子还是子树的顶部。一开始,那是s = 0.04b = 0.04。你没有这样做,所以你的树不代表霍夫曼算法的应用。然后到0.08你添加~ = 0.06。等等。