二维vector的插入:先将一列插入到一维vector中,再插入到二维vector的一行中
int N, M, a;
cin >> N >> M;
vector<vector<int >> V;
vector<int > tmp;
for (int i = 0; i < N; ++i) {
tmp.clear(); // 每次要清空临时vector
for (int j = 0; j < M; ++j) {
cin >> a;
tmp.push_back(a);
}
V.push_back(tmp);
}
二维vector的遍历
-
迭代器遍历
//迭代器遍历 vector<vector<int >>::iterator iter; for (iter = V.begin(); iter != V.end() ; ++iter) { for (int i = 0; i < (*iter).size(); ++i) { cout << (*iter)[i] << " " ; } cout << endl; }
-
下标遍历
for (int i = 2; i < V.size(); i++) { for(int j = 0; j < V[0].size(); j++) cout << V[i][j] << " "; cout << endl; }
输入:
2 2 //代表要输入2行2列的vector
2 1
1 1
输出:
2 1
1 1