哈夫曼编码树怎么解?有一份电文中共使用了五种字符,即a、b、c、d、e,它们的出现频率依次为9、7、5、2、4,请画出对

1个回答

  • 先编造哈夫曼树,哈夫曼树构造规则:

    假设有n个权值,则构造出的哈夫曼树有n个叶子结点. n个权值分别设为 w1、w2、…、wn,则哈夫曼树的构造规则为:

    (1) 将w1、w2、…,wn看成是有n 棵树的森林(每棵树仅有一个结点);

    (2) 在森林中选出两个根结点的权值最小的树合并,作为一棵新树的左、右子树,且新树的根结点权值为其左、右子树根结点权值之和;

    (3)从森林中删除选取的两棵树,并将新树加入森林;

    (4)重复(2)、(3)步,直到森林中只剩一棵树为止

    构造的哈夫曼树是:

    27

    /

    11 16

    / /

    c(5) 6 b(7) a( 9)

    /

    d(2) e(4)

    默认左子树为0 右子树为1,所以对应的编码是:

    a: 11 b:10 c:00 d:010 e:011