集合 (计算机科学)

✍ dations ◷ 2025-07-04 23:58:20 #数据结构,抽象数据类型

在计算机科学中,集合是一组可变量量的数据项(也可能是0个)的组合,这些数据项可能共享某些特征,需要以某种操作方式一起进行操作。一般来讲,这些数据项的类型是相同的,或基类相同(若使用的语言支持继承)。列表(或数组)通常不被认为是集合,因为其大小固定,但事实上它常常在实现中作为某些形式的集合使用。

集合的种类包括列表,集,多重集,树和图。枚举类型可以是列表或集。

在列表中,数据项的顺序是确定的,也可以存在多个相同的数据项。列表支持的操作包括查找项目并找到其位置(若存在),将项目从列表中删除,在特定位置插入项目等。通常的队列,或称FIFO即是一个列表,该列表只能在一端添加项目,而在另一端删除项目。而栈,或LIFO则只能在同一端添加或删除项目。不管是队列还是栈,集合中项目的顺序都应当是一定的,因此这两种情况只是列表的特例。其它列表支持的操作包括排序,再一次说明了其中顺序的重要性。

列表的具体形式包括数组,链表等。

与列表不同,在集中,数据项是无序的,也不允许存在相同数据项。集支持添加、删除和查找项目。一些语言内建对集的支持,而在其它语言中,可以利用散列表实现集。

多重集的行为类似于集,其中数据项是无序的。但在多重集中,可以存在相同的数据项。多重集支持的操作包括添加、删除项,查询相同项在多重集中出现的次数。多重集可以通过排序转换成列表。

关联数组(或称查找表,字典等)的行为和字典相似,为键(例如字典中的单词)输入提供一个值(如字典中的定义)输出。值可以是对复杂数据结构的引用。通常使用散列表实现高效率的关联数组。

在树中,“根”节点与一定数量的数据项以亲-子关系联系起来,而其子数据项也与另外的数据项以同样的方式联系。除了根节点的每个项都有且只有一个父节点,并可能有一些子节点。树支持的操作包括遍历,插入等。用于排序操作的树通常称为堆。通常使用树来保存存在包含亲-子关系的数据,例如菜单,目录及其中文件等。

在图中,每个数据项都可以与一个或多个其它数据项联系起来,其中每个节点都是平等的,类似于无根节点、无亲-子关系的树。图支持的操作包括遍历,查找等。图常常用于对实际问题进行建模,并解决这些问题。在生成树协议中,创建一张代表网络结构的图(或称网格),从而了解应当断开哪些链路以避免数据回圈。

如上所述,集合,以及集合的各种分类都只是抽象概念。由于名字相同或相似,集合及其在各种语言中的实现常常会造成文字上的混淆。集合,列表,集,树等名字究竟是数据结构,抽象数据类型抑或类只能通过具体分析来确定。其中,集合则是计算问题的解决方案中抽象程度最高的概念。从这个方面来看,若过于关注其实现,则可能会对理解集合的数学概念产生反作用。

相关

  • 一磷酸腺苷一磷酸腺苷(英文:Adenosine monophosphate,简称AMP),又名5'-腺嘌呤核苷酸或腺苷酸,是一种在核糖核酸(RNA)中发现的核苷酸。它是一种磷酸及核苷腺苷的酯,并由磷酸盐官能团、戊糖核酸糖
  • 抗甲状腺过氧化物酶抗体人体解剖学 - 人体生理学 组织学 - 胚胎学 人体寄生虫学 - 免疫学 病理学 - 病理生理学 细胞学 - 营养学 流行病学 - 药理学 - 毒理学抗甲状腺自身抗体或简称抗甲状腺抗体(a
  • 应用力学研究所国立台湾大学应用力学研究所(英语:Institute of Applied Mechanics, National Taiwan University),简称台湾大学应力所、台大应力所。于1983年,由虞兆中校长、中山科学研究院黄孝
  • 谬误列表谬误与谬论是不恰当的推理,一般而言谬误指不当的推理思路,而谬论指不当的推理言论,可能是说者有不当思路,或说者无不当思路,但意图使听者产生不当思路或其言论明显容易误导听者产
  • 有机锶化学有机锶化学是研究碳-锶键的化合物的化学分支。金属锶和卤代烃反应,可以得到RSrX,在反应中通常会先加入碘、镁或将锶制成汞齐来活化。用氯代烃和溴代烃反应的产率都较低。用二
  • 代工生产代工生产(英语:Original Equipment Manufacturer,OEM)简称:委托制造 ,又译原始设备制造商,指由采购方提供设备和技术,由制造方负责生产、提供人力和场地,采购方负责销售的一种现代流
  • 尚武文化尚武文化, 以武力技术、知识等作为保卫、进攻、杀伤、掠夺等诸攻防行动作战方式的文化。正面观点:有助于抗御外敌或有效击败危及已方或友邻时的保卫手段,达到克敌制胜之道。反
  • 吴弘济吴弘济(1559年-?),字春阳,一字汝辑,号梅州。明朝政治人物。浙江秀水县(今属嘉兴市)人。己卯乡试四十七名,万历十四年(1586年)丙戌科会试三十九名,登三甲第九十五名进士。湖广承宣布政使司
  • 国民大会 (电视节目)《国民大会》(英语:Belle Show)是TVBS频道播出的谈话节目,于2007年12月10日开播。将针对热点时事话题,以全新的视野、不同的角度,更犀利、更不设限、更深入问题核心,挖掘背后的故事
  • 齐格尔湖 (默尔恩)坐标:53°37′42″N 10°40′44″E / 53.62828°N 10.67896°E / 53.62828; 10.67896齐格尔湖(德语:Ziegelsee),是德国的湖泊,位于该国北部石勒苏益格-荷尔斯泰因州,由劳恩堡县负责