静态建表(链式前向星)
邻接表的静态建表存储图的方式也称链式前向星。链式前向星方法最开始是基于前向星,是以提高其构造效率为目的设计的存储方式,
最终形成的数据却是一个变形的邻接表。链式前向星是目前建图和遍历效率最高的存储方式。
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int maxn = 100005;
int head[maxn];
struct EdgeNode {//存边的结构数据
int to;
int w;
int next;
}edge[maxn];
int main() {
//freopen("in.txt","r",stdin);
//freopen("out.txt","w",stdout);
int n, m, i, j, w;
memset(head,-1,sizeof(head));
cin >> n >> m;//读取数据
for(int k = 0; k < m; k++) {//信息存储
cin >> i >> j >> w;
edge[k].to = j;
edge[k].w = w;
edge[k].next = head[i];
head[i] = k;
}
for(int i = 1; i <= n; i++) {//遍历
for(int k = head[i];k != -1 ; k = edge[k].next) {
cout << i << " "<< edge[k].to << " " << edge[k].w << endl;
}
}
return 0;
}