1.包(Bag)的简介 1.1 什么是包 在现实生活中,我们常见的包有购物袋,塑料袋,布袋等。这些物品的共同特性是他们都是一种容器,可以用来装物品。 而抽象数据类型(ADT)包是没有特定次序的对象的有限集合。这些对象具有相同的或相关的数据类型。包可以含有重复项。 包的行为有: 1.得到当前包中的项数 2.查看包是否为空 3.将给定的对象加到包中 4.从包中删除一个未指定的对象 5.可能的话,从包中删除一个具体对象的一次出现 6.可能的话,从包中删除一个具体对象的全部出现 7.从包中删除所有的对象 8.统计包中的某个对象的个数 9.测试包中是否含有某个对象 10.查看包中的所有对象 1.2说明一个包 可以使用UML来描述一个包类: 包的规格说明(Specification) 抽象数据类型:Bag 数据 有限个对象,不需要唯一,无序,且有相同的数据类型 这个集合中的对象个数 操作 伪代码 UML 描述 getCurrentSize() +getCurrentSize(): integer 任务:报告包中当前的对象个数 输入:无 输出:包中当前对象的个数 isEmpty() +isEmpty(): boolean 任务:查看包是否为空 输入:无 输出:根据包是否为空返回真或假 add(newEntry) +add(newEntry: T): boolean 任务:将给定对象添加到包中 输入:newEntry是一个对象 输出:根据添加是否成功返回真或假 remove() +remove(): T 任务:从包中删除未指定的项,如果可能的话… Continue Reading 01数据结构与抽象 包(bag)