vector二维数组使用

来源:互联网 发布:演技 知乎 编辑:程序博客网 时间:2024/05/22 01:47

本文综述了二维数组使用,代码可以跑一下看看效果。

#include<iostream>#include<vector>using namespace std;//method 1/*int main(){int row, column;cin >> row >> column;//申请空间vector<vector<int> > a;a.resize(row, vector<int>(column));//使用空间for (int j = 0; j < a.size(); j++)for (int k = 0; k< a[j].size(); k++)a[j][k] = 2 * j + k;//outputfor (int j = 0; j < a.size(); j++){cout << endl;for (int k = 0; k< a[j].size(); k++){cout << a[j][k] << "     ";}}system("pause");return 0;}*///method2/*int main(){int row, column;cin >> row >> column;//方法二//申请空间vector<vector<int> > a;a.resize(row);for (int i = 0; i < row; ++i)a[i].resize(column);//使用空间for (int j = 0; j < a.size(); j++)for (int k = 0; k< a[j].size(); k++)a[j][k] = 2*j + k;for (int j = 0; j < a.size(); j++){cout << endl;for (int k = 0; k< a[j].size(); k++){cout << a[j][k] << "     ";}}system("pause");return 0;}*///method 3/*int main(){int row, column;cin >> row >> column;//申请空间vector<vector<int> > a(row, vector<int>(column));//默认初始化内容为0//vector<vector<int> > a(row, vector<int>(column,-1));//用-1初始化二维数组//使用空间for (int j = 0; j < a.size(); j++)for (int k = 0; k< a[j].size(); k++)a[j][k] = j+k;for (int j = 0; j < a.size(); j++){cout << endl;for (int k = 0; k< a[j].size(); k++){cout << a[j][k] << "     ";}}system("pause");return 0;}*///method 4int main(){vector < vector<int> > a; // a是向量类型的向量 vector <int> v1; // v1是int类型的向量 int i, j, m,row,column;cin>>row>>column;for (i = 0; i <row; i++) // a有4个元素 {a.push_back(v1);// 每个元素是v1 }for (j = 0; j < row; j++){for (i = 0; i <column; i++){a[j].push_back(i+j);// a的第i个元素插入一个量 // 就是每个v1插入一个量 // a[0]插入,a[1]插入,a[2]插入,a[3]插入 // 如此循环四次,相当于按列的顺序插入  }}cout << "Size:" << a.size() << endl;for (i = 0; i < a.size(); i++){for (j = 0; j < a[i].size(); j++){cout << a[i][j] << " "; // 输出a[0][0],a[0][1]a[0][2],a[0][3]// 输出a[1][0],a[1][1]a[1][2],a[1][3]// 如此第一个索引值循环4次,相当于按行的顺序输出  }cout << endl; // 输出一行就换行 }system("pause");return 0;}


原创粉丝点击