数据结构课件-第09章 不相交集.pptx

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

数据结构计算机领域本科教育教学改革试点工作计划(“101计划”)研究成果101

不相交集第9章陈键飞清华大学

9.1 问题引入9.2 等价关系、等价类和不相交集9.3 不相交集的存储实现9.4 不相交集的基本运算实现9.5 不相交集的应用9.6 拓展延伸9.7 应用场景

9.1问题引入:Kruskal算法的高效实现9.1问题引入数据结构?BCFADGE1081237616514924第1步:选取E,FBCFADGE1081237616514924BCFADGE1081237616514924第2步:选取C,DBCFADGE1081237616514924第3步:选取D,EBCFADGE1081237616514924第4步:选取B,FBCFADGE1081237616514924第5步:选取E,GBCFADGE1081237616514924第6步:选取A,B

9.1问题引入:Kruskal算法的高效实现9.1问题引入数据结构?

9.1问题引入:Kruskal算法的高效实现9.1问题引入数据结构注意:只需要查询顶点之间是否连通,不关心它们具体通过哪条路径连通此外,只需要支持加边操作,而不需要支持删边操作。这种情况下,与其完整地维护无向图的结构,不如直接维护连通分量构成的集合每个连通分量用其中顶点的集合表示。 1初始时,每个顶点都是独立的连通分量,此时有??个仅包含单一顶点的集合:{??_1},{??_2},…,{??_??}2每加入一条边(??,??),就将??所属的集合和??所属的集合合并3对于连通性查询(??,??),只需查询??和??是否在同一集合中连通性查询问题变成了维护若干不相交的集合,并动态地合并、查找的问题。

9.1问题引入:Kruskal算法的高效实现9.1问题引入数据结构?

9.2等价关系、等价类和不相交集9.2等价关系、等价类和不相交集数据结构不相交集与数学中等价关系、等价类的概念密切相关元素之间的等价关系自然地定义了若干不相交集的集合因此,不相交集常常用于处理等价性查询的问题例如,两个顶点在同一连通分量中就可以看做一种等价性

9.2等价关系、等价类和不相交集9.2等价关系、等价类和不相交集数据结构?

9.2等价关系、等价类和不相交集9.2等价关系、等价类和不相交集数据结构?例9.1.不同问题中的等价关系:1?2?3对于所有生物构成的集合,两种生物是否属于同一科构成一个等价关系

9.2等价关系、等价类和不相交集9.2等价关系、等价类和不相交集数据结构?? 对集合中的任意元素,称所有与其等价的元素为一个等价类: 等价关系把集合划分成若干个不相交的等价类,每个等价类中的元素互相等价。 称所有等价类构成的集合为一个商集。 商集是一系列集合,这些集合彼此不相交,并且其并集是全集X。这与不相交集的概念恰好对应。

9.2等价关系、等价类和不相交集9.2等价关系、等价类和不相交集数据结构??

9.2等价关系、等价类和不相交集9.2等价关系、等价类和不相交集数据结构 不相交集可以用于等价性的动态查询。 等价性的查询在计算机科学中有广泛应用。例如,在编译器的设计中,用于判断符号地址的等价性。?等价关系的增加对应Union操作,即将两个等价类合并?

9.3不相交集的存储实现9.3不相交集的存储实现数据结构 不相交集数据结构定义: 例:考虑集合X={1,2,3,4,5,6,7,8}。合法的划分:{{1,2,3,4,5},{6,7},{8}}或{{1}{2},{3},{4},{5},{6},{7},{8}};以下不是集合X的划分:{{1,2,3,4,5},{6,7}}和{{1,2,3},{3,4,5},{5,6,7,8}}。?

9.3不相交集的存储实现9.3不相交集的存储实现数据结构 不相交集的数据结构需要动态处理集合的合并和查询操作,其ADT定义如下:?

9.3不相交集的存储实现9.3不相交集的存储实现数据结构?

9.4不相交集的基本运算实现9.4不相交集的基本运算实现数据结构?

9.4不相交集的基本运算实现9.4不相交集的基本运算实现数据结构???

9.4不相交集的基本运算实现9.4不相交集的基本运算实现数据结构?朴素的不相交集实现的最坏情况?????

9.4.1按秩合并9.4不相交集的基本运算实现数据结构?

9.4.1按秩合并9.4不相交集的基本运算实现数据结构 采取按秩合并策略后,InitSet和Union操作的实现调整为算法9-4、算法9-5:??

9.4

文档评论(0)

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

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

1亿VIP精品文档

相关文档