




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 第六章集合与字典 宋会英 2 1 集合及其表示2 等价类 第六章集合与字典 3 1 集合及其表示 集合是成员 元素 的一个群集 集合中的成员可以是原子 单元素 也可以是集合 集合的成员必须互不相同 在算法与数据结构中所遇到的集合 其单元素通常是整数 字符 字符串或指针 且同一集合中所有成员具有相同的数据类型 例 colour red orange yellow green black blue purple white 集合基本概念 4 集合中的成员一般是无序的 但在表示它时 常写在一个序列里 常设定集合中的单元素具有线性有序关系 此关系可记作 表示 优先于 整数 字符和串都有一个自然线性顺序 指针也可依据其在序列中安排的位置给予一个线性顺序 在某些集合中保存实际数据值 某些集合中保存标示元素是否在集合中的指示信息 如学校开设的所有课程的编码属于前者 一个学期开设的课程构成的集合属于后者 5 A B或A BA B或A BA B A A A B B B 集合 Set 的运算 6 等价关系与等价类 EquivalenceClass 2 等价类 在求解实际应用问题时常会遇到等价类问题 从数学上看 等价类是对象 或成员 的集合 在此集合中所有对象应满足等价关系 若用符号 表示集合上的等价关系 则对于该集合中的任意对象x y z 下列性质成立 自反性 x x 即等于自身 对称性 若x y 则y x 传递性 若x y且y z 则x z 7 因此 等价关系是集合上的一个自反 对称 传递的关系 相等 就是一种等价关系 它满足上述的三个特性 一个集合S中的所有对象可以通过等价关系划分为若干个互不相交的子集S1 S2 S3 它们的并就是S 这些子集即为等价类 在数学中 给定一个集合X和在X上的一个等价关系 则X中的一个元素a的等价类是在X中等价于a的所有元素的子集 确定等价类的方法确定等价类的方法分两步走 8 读入并存储所有的等价对 i j 标记和输出所有的等价类 voidequivalence 初始化 while 等价对未处理完 读入下一个等价对 i j 存储这个等价对 输出初始化 for 尚未输出的每个对象 输出包含这个对象的等价类 9 给定集合S 0 1 2 3 4 5 6 7 8 9 10 11 及如下等价对 0 4 3 1 6 10 8 9 7 4 6 8 3 5 2 11 11 0进行归并的过程为 初始 0 1 2 3 4 5 6 7 8 9 10 11 0 4 0 4 1 2 3 5 6 7 8 9 10 11 3 1 0 4 1 3 2 5 6 7 8 9 10 11 6 10 0 4 1 3 2 5 6 10 7 8 9 11 8 9 0 4 1 3 2 5 6 10 7 8 9 11 7 4 0 4 7 1 3 2 5 6 10 8 9 11 10 0 4 7 1 3 2 5 6 10 8 9 11 6 8 0 4 7 1 3 2 5 6 8 9 10 11 3 5 0 4 7 1 3 5 2 6 8 9 10 11 2 11 0 4 7 1 3 5 2 11 6 8 9 10 11 0 0 2 4 7 11 1 3 5 6 8 9 10 设等价对个数为m 对象个数为n 一种可选的存储表示为单链表 可为集合的每一对象建立一个带表头结点的单链表 并建立一个一维的指针数组seq n 作为各单链表的表头结点向量 确定等价类的链表方法 11 seq i 是第i个单链表的表头结点 第i个单链表中所有结点的data域存放在等价对中与i等价的对象编号 当输入一个等价对 i j 后 就将集合元素i链入第j个单链表 且将集合元素j链入第i个单链表 12 输出时要解决的问题 如何输出各个等价类 算法的输出从编号i 0的对象开始 对所有的对象进行检测 在i 0时 从第0个单链表先找出形式为 0 j 的等价对 把0和j作为同一个等价类输出 再根据等价关系的传递性 找所有形式为 j k 的等价对 把k也纳入包含0的等价类中输出 如此继续 直到包含0的等价类完全输出为止 13 接着再找一个未被标记的编号 如i 1 该对象将属于一个新的等价类 再用上述方法划分 标记和输出这个等价类 在算法中使用了一个栈 每次输出一个对象编号时 都要把这个编号进栈 记下以后还要检测输出的等价对象的单链表 在输出时设置一个布尔数组out n 用out i 标记第i个单链表是否已经输出 等价类的应用举例 等价类的典型应用是用于软件工程中的黑盒测试方法 使用这一方法时 完全不考虑程序的内部结构 只依据程序的规格说明来设计测试用例 该测试方法把所有可能的输入数据 即程序的输入域划分成若干部分 等价类 然后从每一部分中选取少数有代表性的数据做为测试用例 例 在某一PASCAL语言版本中规定 标识符是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业家精神代际传递-洞察及研究
- 第八单元《词义的辨析和词语的使用》教案(表格式)统编版高中语文必修上册
- 2025企业租赁合同协议书模板
- 党史教育线上考试题库及答案
- 2025【合同范本】铁路运输合同范本
- 2025养殖场山地租赁合同
- 冲压安全生产培训资料课件
- 2025租赁合同模板示例
- 八月快递安全培训总结课件
- 2025化工卧式泵买卖合同书
- 一年级上册语文全册课件
- 《礼仪规范教程》中职配套教学课件
- 颅脑外伤(共61张PPT)
- 项目部材料管理制度要点
- 消防安全检查记录表(完整详细版)1
- winmodv工厂可接受性测试、虚拟调试过程控制实时仿真
- 消费者行为学第01章导论
- 教学课件 金属学与热处理-崔忠圻
- 铁道概论全套课件
- 部编版二年级语文上册全册教案及反思
- 北师大版五年级数学上册全册教案含反思
评论
0/150
提交评论