1. 邻接矩阵
vector<int> G[MAX_V];
/*
边上有属性的情况
struct edge {int to, cost;};
vector<edge> G[MAX_V];
*/
int main() {
int V, E;
cin >> V >>E;
for (int i = 0; i < E; i++) {
int s, t;
cin >> s >> t;
G[s].push_back(t);
// 无向图 G[t].push_back(s);
}
/*
图的操作
*/
// system("pause");
return 0;
}
2. 邻接表
struct vertex {
vector<vertex*> edge;
/*
顶点属性
*/
};
vertex G[MAX_V];
int main() {
int V, E;
cin >> V >>E;
for (int i = 0; i < E; i++) {
int s, t;
cin >> s >> t;
G[s].edge.push_back(&G[t]);
// 无向图 G[t].edge.push_back(&G[s]);
}
/*
图的操作
*/
// system("pause");
return 0;
}