图 (数据结构)

✍ dations ◷ 2025-12-08 13:38:55 #图 (数据结构)

在计算机科学中,图(英语:graph)是一种抽象数据类型,用于实现数学中图论的无向图和有向图的概念。

图的数据结构包含一个有限(可能是可变的)的集合作为节点集合,以及一个无序对(对应无向图)或有序对(对应有向图)的集合作为边(有向图中也称作弧)的集合。节点可以是图结构的一部分,也可以是用整数下标或引用表示的外部实体。

图的数据结构还可能包含和每条边相关联的数值(edge value),例如一个标号或一个数值(即权重,weight;表示花费、容量、长度等)。

图数据结构支持的基本操作通常包括:

如果该数据结构支持和边关联的数值,则通常也支持下列操作:

下表给出了在图上进行各种操作的复杂度。其中,用||表示节点数量,||表示边的数量。同时假设存储的信息是边上对应的值,如果没有对应值则存储∞。

邻接表在稀疏图(英语:sparse graph)上比较有效率。邻接矩阵则常在图比较稠密的时候使用,判断标准一般为边的数量| |接近于节点的数量的平方| |2;邻接矩阵也在查找两节点邻接情况较为频繁时使用。

其它表示和存储图的数据结构还包括链式前向星、十字链表、邻接多重表(英语:adjacency multilist)等。

图问题的并行计算主要存在如下几种困难:处理大量的数据、求解非常规的问题、数据不分散、数据存取对计算的比例很高等。面对这些困难,并行计算中图的表示和存储方式很重要。如果选取了不合适的表示方式,可能带来不必要的通讯花费,进而影响算法的可扩展性。在本节中,并行计算的共享和分布式(英语:distributed memory)存储模型都在考虑之列。

在共享存储模型下,图的表示和非并行计算中的场景是相同的,,因为在此模型下,对图表示(如邻接表)的并行读取操作效率已经足够高了。

在分布式存储(英语:distributed memory)模型下,通常会采用划分(英语:graph partition)点集 V {displaystyle V} p {displaystyle p} 个集合 V 0 , , V p 1 {displaystyle V_{0},dots ,V_{p-1}} 的方式,其中 p {displaystyle p} 是并行处理器的数量。随后,这些点集划分及相连的边按照标号分配给每个并行处理器。每个处理器存储原图的一个子图,而那些两个顶点分属两个子图的边则需额外特殊处理。在分布式图算法中,处理这样的边往往意味着处理器之间的通讯。

图的划分需要谨慎地在降低通讯复杂度和使划分均匀之间取舍。但图划分本身就是NP难问题。因此,实践中会使用启发式方法。

机器学习、社会网络分析等领域中,有时会处理数万亿条边的图。图的压缩存储可以减少存取和内存压力。霍夫曼编码等一些数据压缩的常见方法是可行的。同时,邻接表、邻接矩阵等也有专门的压缩存储方法以提高效率。

相关

  • 阿是穴阿是穴的存在有两个讲法:若为急性劳损,阿是穴也可能是禁针的穴道。如爬山后,承筋穴会痛,属阿是穴。扎针,可导致不良影响。还有一种讲法,阿是穴用来针痔疮。由于痔疮长的位置不同,因
  • 火把节火把节(凉山彝语:ꄔꊒ,Dutzie,音译“杜责”;白语:Huix‧zuit‧jiarx;佤语:Biag)一些民族又称星回节,是云南少数民族例如彝族、白族、纳西族、基诺族、拉祜族的一个重要传统节日。节期
  • 格芯格芯(GlobalFoundries)是一家总部位于美国加利福尼亚州圣克拉拉的半导体晶圆代工公司,目前为世界第二大专业晶圆代工厂,仅次于台积电(TSMC)。公司的首席执行官为Thomas Caulfield
  • 爱·Sharing 高雄梦时代跨年晚会《爱·Sharing 高雄梦时代跨年派对》,是台湾高雄市系列的跨年活动的总称之一,以每年12月31日下午6时至元旦上午1时30分于时代大道前广场的跨年晚会为主轴,是自2016年起高雄梦
  • Cowgill定律Cowgill定律包括两个不相关的音变规律,分别发生在原始希腊语(PG)和原始日耳曼语(PGmc)中,以发现者印欧学家Warren Cowgill(英语:Warren Cowgill)命名。在响音 (/r/, /l/, /m/, /n/)
  • 伊安尼斯·费特法季齐斯伊安尼斯·费特法季齐斯(希腊语:Ιωάννης Φετφατζίδης)是希腊的一位足球运动员。他现在效力于意大利足球甲级联赛球队切沃维罗纳足球俱乐部。并且也代表希腊
  • 短刀行短刀行是于东楼所著武侠小说“碧血黄金”系列的第三部,完成于1991年。三立电视台于1999年将其改编成电视剧《刀歌‧短刀行》,由张卫健、屈中恒、林小楼领衔主演。故事开始是武
  • 国道435号国道435号是日本从山口县山口市至山口县下关市的一般国道。
  • 欧洲运动会奖牌统计本条目显示欧洲运动会的奖牌统计。
  • 世界中风日世界中风日 是每年的10月29日,目的是引起公众关注中风的问题, 提高预防及治疗中风的意识。每年的10月29日,世界各地的机构都会举行不同的活动,教育公众关注中风,以及减低中风对破坏大众健康的风险。此一年一度的活动自2006年开始,由世界中风组织(英语:World Stroke Organization)(WSO)举办。媒体及各专业机构每年都会参与世界中风日的活动。于2009年,有18个国家参与世界中风日的活动包括澳洲、巴西、沙地亚拉伯等地。同年,蒙古中风协会(Mongolian Stroke Assoc