[工学]数据结构7陈慧南_树2.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]数据结构7陈慧南_树2

DATA STRUCTURE §5.7 ?哈夫曼树和哈夫曼编码 哈夫曼树构造过程 9 11 13 3 5 12 (a)初始森林 9 11 13 12 8 3 5 11 13 12 (b)合并3和5 (c)合并8和9 9 3 5 8 17 13 9 3 5 8 17 11 12 23 (d)合并11和12 11 12 23 9 3 5 8 17 13 30 (e)合并13和17 (f)合并23和30 11 12 23 9 3 5 8 17 13 30 53 DATA STRUCTURE §5.7 ?哈夫曼树和哈夫曼编码 哈夫曼编码 例如,有字符集 S={A,B,C,D}, 权值 W={4,2,1,1},(使用频率) 设有电文ABACABDA, 定长编码如: A:00,B:01,C:10,D:11 编码后的码文长16位。 01001100101110 A B A C A B D A (a)字符的二进制编码 (b)哈夫曼树 有字符集 S={A,B,C,D}, 权值 W={4,2,1,1} A:0 B:10 C:110 D:111 4 1 1 2 2 4 8 0 1 1 1 0 0 A B C root D §5.7 ?哈夫曼树和哈夫曼编码 (a)字符的二进制编码 (b)哈夫曼树 有字符集 S={A,B,E,C, D, F}, 权值 W={3,5,9,11,12,13} A:1100 B:1101 C:00 D:01 E:111 F:10 11 12 23 9 3 5 8 17 13 30 53 C D F A B E 1 1 1 0 0 0 0 0 1 1 §5.7 ?哈夫曼树和哈夫曼编码 DATA STRUCTURE 习题 1. 用BinaryTree程序实现p.99第5-7题。 2. 实现书本p.80页程序5.10。 =============================================== 文件名: D+学号后两位+姓名+布置作业日期 例如 D01张三0520 第1个程序工程名为 D01ZS05020A 第2个程序工程名为 D01ZS05020B =============================================== §作业0520 数 据 结 构 第7讲 DATA STRUCTURE DATA STRUCTURE 第5章 树 树的基本概念 1 二叉树 2 二叉树的遍历 3 树和森林 4 树的基本概念 1 堆和优先权队列 6 哈夫曼树和哈夫曼编码 7 二叉树 2 二叉树的遍历 3 树和森林 5 DATA STRUCTURE §5.5 ?树和森林 森林转换成二叉树:① 将森林中各树的根用线连起来,② 在树中,凡是兄弟用线连起来;③ 去掉从双亲到除了第一个孩子以外的孩子的连线,只保留双亲到第一个孩子的连线;④ 最后,使之稍微倾斜成习惯的二叉树形。 这里讨论的森林是指有序森林。 B C K A D E F G H J B C K A D E F G H J B C K A D E F G H J X X X ① ② ③ ③ ④ 森林转换成二叉树 DATA STRUCTURE §5.5 ?树和森林 森林转换成二叉树 令F=(T1,T2,…,Tn)是森林,则F所对应的二叉树B(F)为: (1)若F为空,则B为空二叉树。 (2)若F非空,则B的根是F中第一棵子树T1的根R1,B的左子树是R1的子树森林(T11,T12,…,T1m)所对应的二叉树,B的右子树是森林(T2,…,Tn)所对应的二叉树。 DATA STRUCTURE §5.5 ?树和森林 二叉树转换成森林 令B=(R,LB,RB)是二叉树,R是根,LB是左子树,RB是右子树,则B所对应的森林F=(T1,T2, …,Tn)为: (1)若B为空,则F为空森林。 (2)若B非空,则F的第一棵树T1的根是二叉树的根R,T1的根的子树森林是B的左子树LB所对应的森林,F中的其余树(T2,…,Tn)是B的右子树RB所对应的森林。 C K 二叉树转换成森林 B D A E F G H J D C K A E F G H J B DATA STRUCTURE §5.5 ?树和森林 树和森林的存储表示 多重链表表示法  设度为m的树中有n个结点,总共有n×m个指针域,其中,只有n-1个非空指针域,其余n×m-(n-1)=n(m-1)+1个指针域均为空。 element child1 child2 …… childm A · · · · B · · · · F · · · · C · · · · D · · · · E · · ·

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档