vector<vector<int>>遍历
时间: 2023-10-22 22:15:56 浏览: 68
你好,关于遍历vector<vector<int>>,可以使用双重循环来实现。示例代码如下:
```
vector<vector<int>> vec;
// 假设已经初始化了vec
for(int i = 0; i < vec.size(); i++){
for(int j = 0; j < vec[i].size(); j++){
cout << vec[i][j] << " ";
}
cout << endl;
}
```
希望这能够帮到你!
相关问题
vector<vector<int>>的遍历
可以使用两层循环遍历vector<vector<int>>中的元素,如下所示:
```c++
vector<vector<int>> vec{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
for (int i = 0; i < vec.size(); i++) {
for (int j = 0; j < vec[i].size(); j++) {
// 访问vec[i][j]
cout << vec[i][j] << " ";
}
cout << endl;
}
```
输出结果为:
```
1 2 3
4 5 6
7 8 9
```
其中,外层循环遍历vector<vector<int>>中的每个vector<int>,内层循环遍历当前vector<int>中的每个元素。可以使用下标访问vec[i][j]来获取元素的值。
C++遍历vector<vector<int>>数组
在C++中,遍历二维向量`std::vector<std::vector<int>>`通常有两种方式:嵌套循环或者利用范围for循环。
1. **嵌套循环**:
```cpp
std::vector<std::vector<int>> matrix = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
// 使用两个嵌套循环遍历
for (int i = 0; i < matrix.size(); ++i) {
for (int j = 0; j < matrix[i].size(); ++j) {
std::cout << matrix[i][j] << " ";
}
std::cout << "\n"; // 每行结束后换行
}
```
2. **范围for循环**:
从C++11开始,你可以使用范围for循环,但这只适用于支持迭代器的容器。对于二维向量,需要先获取内部向量的起始和结束迭代器:
```cpp
for (const auto& row : matrix) {
for (int element : row) {
std::cout << element << " ";
}
std::cout << "\n";
}
```
这里假设`row`是`matrix`中的每个元素,即一个一维向量。
阅读全文