第8章 集合.pdf

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

第8章集合  以集合为基础的抽象数据类型  集合的定义和记号  定义在集合上的基本运算  用位向量实现集合  用链表实现集合  应用举例 2016/10/18 1  8.1 以集合为基础的抽象数据类型  集合是表示事物的最有效的数学工具之一,生活中也随 处可见集合的例子。  如:银行中所有储户帐号的集合;图书馆中所有藏书的 集合;一个程序中所有标识符的集合;2003级34班全体 同学的集合等。  在数据结构和算法的设计中,集合是许多重要抽象数据 类型的基础。 2016/10/18 2  8.1.1 集合的定义  集合:集合是由元素(成员)组成的一个类。集合的成 员可以是一个集合,也可以是一个原子。  原子:不可再分的元素。  多重集合:允许同一元素在集合中多次出现的集合。  有序集:当由原子组成的集合具有线性序关系“”时, 称该集合为有序集。“”是集合的一个线性序,它满足:  (1)若a、b是集合中任意2个原子,则ab,a=b和ba三者 必居其一;  (2)a,b和c是集合中的原子,且ab,bc则ac(传递 性)。 2016/10/18 3  8.1.1 集合的定义  记录:集合中的元素通常是记录。  项(域):元素的属性。元素通常有多个项。  键(值):能唯一地标识元素的值。它也是元素的属性。 有序集通常以键(值)的序为序。  为方便叙述,常将一个元素当作一个键来处理,但要 记住键只是元素记录中许多域中的一个域。 2016/10/18 4  8.1.2 集合的记号  枚举式:把集合的元素枚举在一对花括号中。 例如{1,4 }表示由1和4两个元素组成的集合。集合中 元素的枚举顺序是任意的。例如{1,4 }和{4 ,1 }表 示同一集合。 这种方式只对有穷集可行。  解析式:把集合的元素应满足的条件解析地表达在一 对花括号中。 2 例如 {x |存在整数y,使x = y }表示由全体完全平方 数组成的集合。 这种方式既可表示有穷集,又可表示无穷集。 2016/10/18 5  8.1.3 定义在集合上的基本运算 约定:其中大写字母表示一个集合,小写字母表示集合 中的一个元素。  SetUnion(A,B):并集运算  SetIntersection(A,B):交集运算  SetDifference(A,B) :差集运算  SetAssign(A,B) :赋值运算(将B的值赋给A)  SetEqual(A,B) :判等运算  SetMember(x,S) :成员运算(x是否属于S)  SetInsert(x,S) :插入运算  SetDelete(x,S) :删除运算 2016/10/18 6  8.2 用位向量实现集合  位向量是一种每个元素都是二进制位(即0/1值)的数 组。  当所讨论的集合都是全集合{1,2,…,n }的子集,而且n 是一个不

文档评论(0)

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

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

1亿VIP精品文档

相关文档