数据结构精品课件-哈夫曼编码.pptVIP

数据结构精品课件-哈夫曼编码.ppt

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 哈夫曼编码 在数据通信中,经常需要将传送的文字转换为二进 制字符0和1组成的二进制串,我们称这个过程为编码。 例如,假设要传送的电文为ABACCADAA,电文中只有A,B,C,D四种字符。如果在编码时考虑 字符在要传送的电文中出现的次数,让出现次 数越高的字符采用越短的编码,构造一种不等 长编码,则可使要传送的电文的代码长度最短。 等长编码:A:00 B:01 C:10 D:11 不等长编码:A:0 B:10 C:110 D:111 6.5 哈夫曼树及其应用 第 6 章 树和二叉树 * 设计不等长编码,必须保证一个字符 的编码都不是另一个字符的编码的前缀。 6.5 哈夫曼树及其应用 第 6 章 树和二叉树 哈夫曼编码 前缀编码: 任何一个字符的编码都不是同一字 符集中另一个字符的编码的前缀。 利用哈夫曼树可以构造一种不等长的二进制编码, 并且构造所得的哈夫曼编码是一种最优前缀编码, 即使所传电文的总长度最短。 哈夫曼编码: 对哈夫曼树中每个左分支赋予0,右分支赋予1,则从根到每个叶子的路径上,各分支的值构成该叶子的哈夫曼编码。 例:若要传输如下单词 state, seat, act, tea, cat, set, a, eat 如何使所传送的信息编码长度最短? 为保证信息编码长度最短,先统计各字符出现的次数,然后以此作为权值, 构造哈夫曼树。 6.5 哈夫曼树及其应用 第 6 章 树和二叉树 7 2 3 5 15 8 5 10 25 0 0 0 0 1 1 1 1 00 10 010 011 编码: 左分支:0;右分支:1; 根到叶子路径上的 值构成叶子的编码。 11 需传输信息:state, seat, act, tea, cat, set, a, eat 2 5 7 8 3 c e a t s 各字符权值: 010 00 10 11 011 c e a t s 各字符编码: 构造哈夫曼树: 结论一:哈夫曼编码是前缀码。 结论二: 哈夫曼编码是最优前缀码。 若di≠dj(字符不同),则对应的树叶不同,因为从根到每个叶子的路径是不同的,所以一条路径不可能是另一条路径的前部(前缀),因此哈夫曼编码是前缀码。 用字符出现的频率(Pi)为权值构造哈夫曼树,并以此来构造字符的哈夫曼编码,由于哈夫曼树的WPL最小: 所以传输的报文长度: 必定最小。 WPL=?wi×li i=1 n 报文长=?Pi×li i=1 n 6.5 哈夫曼树及其应用 第 6 章 树和二叉树 * 假设某系统通信联络中只可能出现8种字符 ,其 出现概率为0.05,0.29,0.07,0.08,0.14,0.23,0.03,0.11, 试设计哈夫曼编码。 例如: 设w={5,29,7,8,14,23,3,11} 5 3 8 ,8} 7 8 15 ,15} 11 19 ,19} 14 29 ,29} 23 42 ,42} 29 58 ,58} 100 ,100} 0 1 0 1 0 1 0 1 0 1 0 1 0 1 00 010 0110 0111 10 110 1110 1111 6.5 哈夫曼树及其应用 第 6 章 树和二叉树 哈夫曼编码应用举例 例:设有一台模型机,共有7种不同的指令,各指令的使用频率Pi为: 指 令 I1 I2 I3 I4 I5 I6 I7 使用频率pi 0.40 0.30 0.15 0.05 0.04 0.03 0.03 哈夫曼树最典型、最广泛的应用是在编码技术上,而操作码的优化也是其应用之一。 以指令的使用频率为权值构造哈夫曼树,并求各指令的哈夫曼编码。 6.5 哈夫曼树及其应用 第 6 章 树和二叉树 则指令的平均码长为: pi×li =0.4*7+0.3*2+0.15*3+0.05*5+0.04*5 +0.03*5+0.03*5 = 2.20 n i=1 若用等长编码,其平均码长为3。 指令 I1 I2 I3 I4 I5 I6 I7 编码 1 01 001 00011 00010 00001 00000 各指令的哈夫曼编码为: 6.5 哈夫曼树及其应用 第 6 章 树和二叉树 哈夫曼编码算法 利用哈夫曼树求编码时,编码是由后向前生成的,需要走一条从叶子到根的路径 当前结点若是其双亲的左子树时,则置当前编码位为0,否则置为1。 当由叶子走到根结点时,完成一个叶子结点编码的求取。 6.5 哈夫曼树及其应用

文档评论(0)

极研教育 + 关注
官方认证
服务提供商

SAC证券行业专业人员持证人

承接各类可行性研究报告撰写,详情加v:JiYan-edu

认证主体 天津西青区极研智慧智能科技有限公司
IP属地天津
领域认证 该用户于2023年10月01日上传了SAC证券行业专业人员
统一社会信用代码/组织机构代码
91120111MA07276K52

1亿VIP精品文档

相关文档