链式前向星

✍ dations ◷ 2025-09-12 11:20:58 #软件,数据结构,存储软件

链式前向星是一种用于存储图的数据结构,一般认为是由Jason911发明的。链式前向星采用了邻接表的思想,本质上就是用链表实现的邻接表。可以使用数组模拟链表,定义head,to,nxt,edge数组,其中长度为n的head数组表示从每个节点出发的第一条边在to和edge数组中的位置,长度为m的to和edge是一一对应的,分别记录每条边的终点与边权(对于无权图,edge数组可省略),长度也为m的nxt数组模拟了链表指针,表示从相同节点出发的下一条边在to和edge数组中的位置。因此,链式前向星的空间复杂度为 O ( n + m ) {\displaystyle O(n+m)}

邻接矩阵比链式前向星好写,链式前向星比邻接表好写。

邻接矩阵比邻接表效率高,邻接表比链式前向星效率高。

邻接矩阵空间复杂度为 O ( n m ) {\displaystyle O(nm)} ,过于高;邻接表的空间复杂度与链式前向星差不多。

邻接矩阵扩展性极差,应用范围不广,邻接表和链式前向星扩展性较好。

相较而言,链式前向星是一个比较中庸的数据结构。虽说链式前向星还未普及开来,但它绝对是一种优秀的数据结构。

C++代码实现:

相关

  • 橡胶橡胶是一种有弹性的聚合物。橡胶可以从一些植物的树汁中取得,也可以是人造的,两者皆有相当多的应用及产品,例如轮胎、垫圈等,遂成为重要经济作物。橡胶的种植主要集中在东南亚地
  • ScienceDirectScienceDirect是世界上科学研究出版的最大在线收藏。出版商是荷兰的爱思唯尔公司,包含了大约一千一百万篇文章、2500种期刊、6000多册电子图书、参考书、手册,这些文章分为以
  • 当归当归(学名:Angelica sinensis),属伞形科的一种植物。一般作为药用。多年生草本植物,高0.4~1米。茎直立,有纵直槽纹,无毛。二或三回三出式羽状复叶,小叶卵形,浅裂或有缺刻。开白色花,复
  • 化学键化学键(英语:Chemical Bond)是一种粒子间的结合模式,其中粒子可以是原子或离子。透过化学键,粒子可组成多原子的化学物质。键由两相反电荷间的电磁力引起,电荷可能来自电子和原子
  • 放射性药物本表罗列出核医学放射性药物。一些放射性同位素¤在应用时采用的是离子形式或惰性形式,并没有依附于某种药物;这张列表之中也收录有此类的核医学放射性药物。在这张列表之中,每
  • 气候地貌学气候地貌学是地貌学的一个分支,主要研究气候与地貌之间的关系,研究在不同的气候条件下,外动力的作用形成不同的地貌,在不同的气候区,不仅主导的外动力不同,而且不同的外动力强度和
  • 分水岭分水岭(英语:drainage divide),是河流流域边缘较高处相连成线,以与相邻的流域区隔,又称为分水线。分水岭不但是自然地理的界线,而且也常是政治地理上的分界,很多有时也引申为重要转
  • 达哈拉沙漠达哈拉沙漠(Ad-Dahna)位于阿拉伯沙漠的中部,成为连接北面内夫得沙漠和南面鲁卜哈利沙漠的蝴蝶状沙地走廊,全长超过1,000公里,阔度少于80公里,沙丘因包含铁氧化物而呈红色。 达哈拉
  • 柳德米拉·帕夫利琴科柳德米拉·米哈伊尔洛夫娜·帕夫利琴科(乌克兰语:Людмила Михайлівна Павліченко,俄语:Людмила Михайловна Павличенко
  • 李璧李璧(15世纪-1525年),字白夫。广西承宣布政使司武缘县止戈乡(今广西武鸣县陆斡乡覃李村)人,祖上原籍山东承宣布政使司汶上县,元初避难迁居武缘,明代诗人。约活动于明弘治至嘉靖年间。