网站大量收购独家精品文档,联系QQ:2885784924

6.5 哈夫曼树vv数据结构与算法.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序设计与问题求解 ——哈夫曼树 哈夫曼树  什么是路径、路径长度? 在一棵树中,从一个结点往下到另一个结点之间的通路, 称为路径。通路中分支的数目称为路径长度。 Z  二叉树带权路径长度 5 设二叉树有n个带有权值的叶子结点,每个叶子到根的路 X Y 径长度乘以其权值之和称为二叉树带权路径长度。记作 : 3 2 n w —第i 个叶子的权重 WPL wi li l i —第i 个叶子到根的路径长度 WPL=3*2+2*2+5*1=15 i 1 i 哈夫曼树  什么哈夫曼树? 以一些带有固定权值的结点作为叶子所构造的,具有最小带权路径长度的二叉树。 设X、Y、Z权值为3、2、5 ,可以构造多种叶子含权的二叉树,例如 Z X Y 5 3 2 X Y Z Y Z X 3 2 5 2 5 3 WPL=3*2+2*2+5*1=15 WPL=5*2+2*2+3*1=17 WPL=5*2+3*2+2*1=18 哈夫曼树的构造过程 假定有n个具有权值的结点,则哈夫曼树的构造算法如下: ① 根据n个权值,构造n棵二叉树,其中每棵二叉树中只含一个权值为w 的根结点; i ② 在所有二叉树中选取根结点权值最小的两棵树 ,分别作为左、右子树构造一棵新 的二叉树 ,这棵新的二叉树根结点权值为其左、右子树根结点的权值之和 ;删去原来的 两棵树,留下刚生成的新树 ; ③ 重复执行②,直至最终合并为一棵树为止。 假定有a、b、c、d四个字符,它们的使用权重比为6 ﹕4 ﹕2 ﹕1 6 4 2 1 6 4 3 6 7 13 a a b c d a b a b c d b c d 初始状态 步骤1 步骤2 步骤3 c d 哈夫曼树与哈夫曼编码 问 假定有一段报文由a、b、c、d四个字符构成,它们的使用频率比为6 ﹕4 ﹕2 ﹕1 , 题 请构造一套二进制编码系统,使得报文翻译成二进制编码后无二义性且长度最短 0 1 任一编码方案 一一对应 b a a -1 b-0 c-10 d-11

文档评论(0)

恬淡虚无 + 关注
实名认证
内容提供者

学高为师,身正为范.师者,传道授业解惑也。做一个有理想,有道德,有思想,有文化,有信念的人。 学无止境:活到老,学到老!有缘学习更多关注桃报:奉献教育,点店铺。

1亿VIP精品文档

相关文档