设字符集D={A,B,C,D,E},各字符使用频率W={10,2,5,6,4},画出对字符进行哈夫曼编码时所对应的哈夫

发布网友 发布时间:2022-04-23 10:08

我来回答

1个回答

热心网友 时间:2023-10-10 22:03

频率是W={10,2,5,6,4},你可以根据这个算出每个符号的使用概率。Huffman编码的基本思想就是:对于使用频率比较高的符号用较短的码字去编码,对于使用频率比较低的符号用较长的码字去编码,这样使得编码效率很高,即所编的码字的平均每个比特所携带的信息量较大。

A的概率:10/27    (编码为:11)

B的概率:2/27      (编码为:101)

C的概率:5/27      (编码为:01)

D的概率:6/27      (编码为:00)

E的概率:4/27      (编码为:100)

编码的具体规则是:每次找概率最小的两个符号合并,若同时出现多个最小的概率,那就随便合并(其实具体工程应用是不能随便合并的,因为这个涉及到最后编码完成后,码字长度的方差问题,工程上方差要尽可能小,初学者可不拘泥于此)

具体看我给你做的PPT

还有就是你问的:是不是只有一种可能。回答是无论如何都肯定不是只有一种可能的,构造好Huffman树后,在树枝上赋值0和1,这个是随便赋的,为了简便和一致,图中左侧树枝都赋值为1,右侧为0

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com