首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >遍历列表的向量

遍历列表的向量
EN

Stack Overflow用户
提问于 2016-11-29 17:44:54
回答 2查看 582关注 0票数 0

所以我在学习存储库和图,所以我发现图可以表示为列表的向量,可以是这样的,其中12,3,4,5,6是顶点,从顶点1我可以转到数字2,从3到6,等等。

代码语言:javascript
复制
1 2 3 4 5 6 
2   6 1   2
      2

但是,我已经将这些值保存在向量列表中,我如何遍历它才能获得图形呢?我的向量列表名为_verticesEdges。

例如,要获得这样的输出:

顶点1: 2

顶点2:

顶点3: 6

顶点4: 1 2

顶点5:

顶点6: 2

感谢您的帮助!

EN

回答 2

Stack Overflow用户

发布于 2016-11-29 18:20:34

代码语言:javascript
复制
Assuming you have stored from index 1 to n (that means size of 0th index of your vector is zero), where n is number of vertices,

for (int i = 1; i <= n; i++)
{
  cout << "Vertex " << i << ": ";

  for (int j=0; j< _verticesEdges[i].size(); j++)
  cout <<  _verticesEdges[i][j] << " ";
  cout << "\n";
}
票数 1
EN

Stack Overflow用户

发布于 2016-11-29 18:14:06

像这样的东西

代码语言:javascript
复制
std::vector<std::list<int>> vecOfLists;
// fill vecOfLists;
for (size_t i = 0; i < vecOfLists.size(); ++i) {
    std::cout << "Vertice " << i + 1 << ": ";
    for (int num : vecOfLists[i]) {
        std::cout << num << " ";
    }
    std::cout << std::endl;
}

我使用通常的for来迭代列表,因为索引是必需的,并且使用range-based for来迭代列表,因为如果不需要索引,这是更好、更现代的遍历整个容器的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40862509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档