集合 (计算机科学)

✍ dations ◷ 2025-11-27 17:09:46 #数据结构,抽象数据类型

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

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

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

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

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

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

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

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

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

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

相关

  • 托克劳群岛面积以下资讯是以2016年10月估计国家领袖国内生产总值(购买力平价) 以下资讯是以2017年估计国内生产总值(国际汇率) 以下资讯是以1993年估计托克劳(英语:Tokelau),也称联合群岛或尤
  • 克里米亚共和国俄罗斯联邦(浅黄色)克里米亚半岛克里米亚共和国(俄语:Республика Крым,罗马化:Respublika Krym;乌克兰语:Республіка Крим;土库曼斯坦语:Respublikasy Kr
  • 粉红色粉红色(英语:Pink)是一种由红色和白色混合而成的颜色,通常也被描述成为淡红色。但是更准确的应该是不饱和的亮红色。在欧洲和美国,粉红色通常与女生联系在一起,而蓝色会与男生联系
  • 西洋接骨木西洋接骨木(学名:Sambucus nigra)为五福花科接骨木属的植物。原产于欧洲和北美洲,后来人工引种到世界其他地区。落叶乔木或大灌木,达4-10米,幼枝具纵条纹,空心 。二年生枝黄褐色,具
  • 约翰·C·卡尔霍恩约翰·卡德威尔·卡尔霍恩(英语:John Caldwell Calhoun,1782年3月18日-1850年3月31日),南卡罗来纳州人,美国政治家。他是19世纪前半叶最著名的美国政治家之一,曾任美国副总统、美国
  • SH-604290万美金(MH-60R,2012财年报价) 2810万美金 (MH-60S,2012财年报价)SH-60海鹰(SH-60 Seahawk)是塞考斯基(Sikorsky)所开发生产的一款双涡轮轴引擎旋翼中型军用直升机。此款直升
  • 乌冬面乌冬面(日语:うどん ,也写作“饂飩 ”),是一种日本的以小麦为原料制造的面体,在粗细和长度方面有特别的规定。现今日本乌冬面的形状诞生于室町时代(公元1336─1573)中期,元禄时代(公
  • 徐州 (三国至明朝)徐州,中国古代的州,前身为监察区徐州刺史部。早期幅员广袤,包括今江苏省长江以北、山东省西南部和安徽省小部,南北朝时期辖境逐渐缩小,北朝后期以后辖境仅限于今江苏省徐州市一带
  • chashamachashama(以小写字母c开头)是一家位于美国纽约市的非盈利性艺术组织。chashama主要利用闲置的土地为艺术家们提供低价的创作空间。
  • 治安出动治安出动(日语:治安出動/ちあんしゅつどう )是指日本自卫队的一种行动(日语:自衛隊の行動),也是自卫队所赋的警察机能。依据《自卫队法(日语:自衛隊法)》第78条规定,面临间接侵略(日语:間