给定权值(7,18,3,32,5,26,12,8),构造相应的哈夫曼树.

王朝知道·作者佚名  2010-09-23
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

我快啊,快考试了.

參考答案:

按权值大小排列后 3 5 7 8 12 18 26 32

只要按照将最小的两个合并, 合并后的值再入列中(最小的两个出列), 至到列中只有一个值.

按上面要求构造哈夫曼树如下:

/////树列完后, 可取左树编码 为0, 右为 1, (左为 1, 右为 0 亦可)

[3]`````[5]`````````[7]``````[8]

``\`````/`````````````\``````/

`0`\```/`1```````````0`\````/`1

````\`/`````````````````\``/

````(8)`````[12]````````(15)`````[18]

``````\``````/`````````````\``````/

`````0`\````/`1```````````0`\````/`1

````````\``/`````````````````\``/

````````(20)``````[26]```````(33)``````[32]

```````````\``````/`````````````\``````/

``````````0`\````/`1```````````0`\````/`1

`````````````\``/`````````````````\``/

`````````````(46)`````````````````(65)

````````````````\`````````````````/

```````````````0`\```````````````/`1

``````````````````\`````````````/

```````````````````````(111)

则按上面的树可得到各权值所对应的编码:

//// 其编码是从树顶到该权值点所经过的 1 或 0 的序列

[`7]:``1`0`0`0

[18]:``1`0`1

[`3]:``0`0`0`0

[32]:``1`1

[`5]:``0`0`0`1

[26]:``0`1

[12]:``0`0`1

[`8]:``1`0`0`1

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航