我只是练习图表...接受邻接列表的输入...但是无法打印出来......请帮助...
#include <iostream>
#include<vector>
#include<stdio.h>
using namespace std;
#define MAX 10000//maximum node
vector<int >edges[MAX];
vector<int>cost[MAX];
int main()
{
int n,e,i;
scanf("%d%d",&n,&e);
for(int i=1;i<=e;i++)
{
int x,y;
scanf("%d%d",&x,&y);
edges[x].push_back(y);
cost[x].push_back(1);
}
return 0;
}
答案 0 :(得分:0)
你可能需要2个for循环:
for(int a=0; a<MAX; a++) {
for(std::vector<int>::const_iterator i = edges.begin(); i != edges.end(); ++i) {
std::cout << *i << ' ';
}
std::cout << endl;
}
并为成本做同样的事情。请注意,您可能会有空行,但您可以修改代码以排除空向量。