第七天链式前向星存图
图片如下所示
本代码存的是有向图,图示为无向图。
#include<iostream>
using namespace std;
const int maxn = 100;
struct node//to 边的终点编号,w 权值, next 以 x 为起点的上一条边的编号
{int to,w,next;
}e[maxn];
//head[]数组下标表示起点编号,head[]数组里面的值表示在e[maxn]中开始的下标编号
int cnt, head[maxn];void add( int u, int v, int w )
{e[++cnt].to = v;e[cnt].w = w;e[cnt].next = head[u];head[u] = cnt;
}
void print(int s)
{for(int i = head[s]; i!=0; i = e[i].next){printf("%d -> %d : %d\n",s,e[i].to,e[i].w);}
}
int main()
{int n,m,s,u,v,w;cin>>n>>m;//n 个点 m 条边 for(int i = 1; i<=m; i++){cin>>u>>v>>w;add(u,v,w);}//遍历一条以 1 为起点的边 print(1);
}
/*
5 7
1 3 7
1 2 6
1 4 8
1 5 9
3 5 5
4 5 2
2 4 4
*/
链式前向星讲解视频链接(点我)