我试图在图表上做bfs,给出一个邻接列表。 这是一个示例输入。
1 2 3
2 4
1
2 3 4
我知道行数,n(验证数)。 每行包含0到n-1个整数。
这是一次尝试,但它不起作用,因为它读取所有整数直到输入结束。
for(i=0;i<n;i++)
{
while(cin>>v)
{insert(i,v);}
}
我想分别处理每一行。 在搜索时,我找到了向量和stl的答案。如果有人能想出一个更优雅的解决方案,那将会很好。
感谢。
答案 0 :(得分:4)
首先,使用getline读取一行:
string line;
getline( cin, line ); // should be error handling here
然后,使用istringstream读取行中的整数:
istringstream is( line );
int n;
while( is >> n ) {
// do something with n
}