1.边上有属性,比如权
#include<iostream>
#include<vector>
using namespace std;
#define MAXV 500
vector<int>G[MAXV];
/*
struct edge
{
int from,to;
};
vector<edge>G[MAXV];
*/
int main()
{
int V,E;
cin>>V>>E;
int i;
for(i=0;i<E;i++)
{
int s,t;
cin>>s>>t;
G[s].push_back(t);
G[t].push_back(s);
}
return 0;
}
2.顶点上有属性 比如入度和出度
#include<iostream>
#include<vector>
using namespace std;
#define MAXV 500
struct vertex
{
int in_degree,out_degree;
vector<vertex*>edge;
};
vertex G[MAXV];
int main()
{
int V,E;
scanf("%d%d",&V,&E);
int i;
for(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]);
}
return 0;
}