图 (数据结构)

✍ dations ◷ 2025-12-02 09:25:48 #图 (数据结构)

在计算机科学中,图(英语: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难问题。因此,实践中会使用启发式方法。

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

相关

  • 糖肽糖肽类抗生素(glycopeptide antibiotic)是指一类化学本质为有糖基修饰的多肽链的抗生素。组成糖肽类抗生素的多肽可能是环形或线性,由属于非核糖体合成肽。糖肽类抗生素的达到
  • 夏季奥林匹克运动会橄榄球比赛橄榄球曾在1900年奥运、1908年奥运、1920年奥运和1924年奥运成为正式比赛项目,是15人制的橄榄球。2016年奥运将采七人制橄榄球成为正式项目,2016年的获奖国家也与当时大相径庭
  • 特罗普数额特罗普数额(Droop Quota)是一种用于可转移单票制及比例代表名单投票制中的最大余额方法的数额。只要有关候选人或候选名单每取得数额一倍的票数,便能获分配一个议席。特罗普数
  • 土耳其-库尔德冲突Ongoing: TurkeyOther forces: Kurdistan Communities Union (KCK) YDG-H: HBDH TKP/ML TAKCurrent commanders Recep Tayyip Erdoğan Hulusi Akar Yaşar Güler Curre
  • 如此美好《C'est Si Bon》(韩语:쎄시봉)是韩国2015年2月5日上映的复古纯爱电影,片中重现韩国七零年代校园民歌时期,剧情描述一个乡下男孩吴根泰(郑宇 饰)误打误撞进入首尔最热门的音乐圣地
  • 亚洲周刊中文十大好书《亚洲周刊》2004年起评选出十本中、港、台等地的优秀中文出版物推介。与联合报读书人周报最佳书奖、中国时报开卷周报年度十大好书等并列为权威性的书本质素指标。于2020年
  • 九天大濮史录《九天大濮史录》是指2009年突然见诸《光明日报》等多家中国大陆主流媒体报导的,据称是贵州省仡佬学会付尔光等人在黔北一李姓仡佬族家里发现的一本用“仡佬文”和汉文对照书
  • 埃米莉·尼尔森埃米莉·尼尔森(英语:Emily Nelson,1996年11月10日-)是一名英国的女子职业自行车运动员。她曾参加荷兰阿珀尔多伦举行的2018年世界自由车场地锦标赛,结果获得女子麦迪逊赛的金牌和
  • 云南角盘兰云南角盘兰(学名:)为兰科角盘兰属下的一个种,产于云南西部横断山区。
  • 大森志郎大森志郎(日语:大森 志郎/おおもり しろう ,1905年2月4日-1992年9月9日)是日本史以及民俗学者。大森志郎出生于福岛县,1928年毕业于东北帝国大学史学科,1930年7月加入南满洲铁道,1936年6月出任满铁抚顺图书馆馆长,后担任建国大学教授。第二次世界大战结束后,担任东京女子大学教授以及创价大学教授。