Graph 如何在图形中打印源节点?
我使用stl创建了无向图。该程序的输出如下: 1 2 02 01 但我还想打印源节点::输出应该是: 0112 102 2 0 1 在代码中我应该做什么Graph 如何在图形中打印源节点?,graph,stl,Graph,Stl,我使用stl创建了无向图。该程序的输出如下: 1 2 02 01 但我还想打印源节点::输出应该是: 0112 102 2 0 1 在代码中我应该做什么 #include<bits/stdc++.h> using namespace std; vector <list<int> >a(4); void addEdge(int i,int j) { a[i].push_back(j); a[j].push_back(i); } int main() {
#include<bits/stdc++.h>
using namespace std;
vector <list<int> >a(4);
void addEdge(int i,int j)
{
a[i].push_back(j);
a[j].push_back(i);
}
int main()
{
vector<list<int> >::iterator it1=a.begin();
addEdge(0,1);
addEdge(0,2);
addEdge(1,2);
int i=0;
while(it1!=a.end())
{
list<int> it2=*it1;
list<int>::iterator itr=it2.begin();
while(itr!=it2.end())
{
cout<<*itr<<" ";
itr++;
}
cout<<endl;
it1++;
}
}
你所说的“源节点”到底是什么意思?你的例子不太清楚。你的图形是一个三角形。我看到您正在将图形存储为邻接列表。。。但是我不明白你到底想要输出什么源节点应该是it1-a.begin,如果你是这么要求的话。我想在输出中打印源节点,但无法打印。我是stl的初学者。0->1->2这里的源节点是0。我的代码只打印我看到的1->2,你想输出你的列表附加到的节点。好吧,那么你必须按照@IgorTandetnik说的去做,只是不能感谢@dingalapadum和@IgorTandetnik。