21xrx.com
2024-12-27 19:36:23 Friday
登录
文章检索 我的文章 写文章
C++二维vector遍历技巧分享
2023-07-07 06:26:53 深夜i     --     --
C++ 二维vector 遍历 技巧 分享

C++二维vector是一种非常常用的数据结构,它可以用来存储二维数组,以及其他类型的复杂数据结构。在C++程序中,遍历二维vector是非常常见的操作。本文将分享一些技巧,帮助您更加高效地遍历二维vector。

1. 使用range-based for循环

range-based for循环是C++11引入的一种新循环,它可以使得遍历vector更加简单方便。使用range-based for循环遍历二维vector时,可以先循环遍历行,再循环遍历列,代码如下:


for(const auto& row: matrix) {

  for(const auto& element: row)

    // 对于每个元素执行操作

  

}

在上面的代码中,我们使用了auto&来引用二维vector中的每个元素,这可以避免元素被拷贝的性能消耗。

2. 使用迭代器

迭代器是C++中一种很灵活的遍历数组的方式。对于二维vector,我们可以使用两个嵌套的迭代器来实现遍历二维vector。代码如下:


for(auto row = matrix.begin(); row != matrix.end(); ++row) {

  for(auto element = row->begin(); element != row->end(); ++element)

    // 对于每个元素执行操作

  

}

在上面的代码中,我们使用了begin()和end()方法来获取每行和每列的迭代器,来遍历整个二维vector。

3. 使用下标遍历二维vector

使用下标遍历二维vector是一种更加简单的方式。我们可以使用两个嵌套的for循环遍历整个二维vector,代码如下:


for(int i = 0; i < matrix.size(); i++) {

  for(int j = 0; j < matrix[i].size(); j++)

    // 对于每个元素执行操作

  

}

在上面的代码中,我们使用了vector的size()方法获取行数和列数,然后使用下标访问每个元素,以实现遍历二维vector。

以上就是遍历二维vector的三种常用方法。需要注意的是,由于二维vector是一个动态变化的数据结构,因此在遍历时需要时刻注意边界问题,避免程序出现错误。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复