Vector的二维数组

#include<bits/stdc++.h>
using namespace std;
int main()
{
/*
int N=5,M=3 
1.vector创建一个二维数组总是: 
vector<vector<int>> array(N);
for (int i = 0; i < array.size(); i++)
    array[i].resize(M);
    2.方法2 
    N行,每行M个元素(一维数组),元素初始化=0 
    vector<vector<int> > array(N, vector<int>(M,0));
    3.二维vector的遍历 
      需要定义的迭代器:
 二维:vector<vector<int>>::iterator iter;
 一维:vector<int>::iterator it;
 还需要定义一个一维vector 来存储每一行
  vector<int> vec_tmp;
4.基于3的输出:
 for(iter = array.begin(); iter != array.end(); iter++)
     {
        vec_tmp = *iter;
        for(it = vec_tmp.begin(); it !=vec_tmp.end(); it++)
            cout << *it << " ";
        cout << endl;
     }
     5.实现对二维的初始化:
for(i = 0; i < array.size(); i++)
    {
   for (j = 0; j < array[0].size();j++)
   {
       array[i][j] = (i+1)*(j+1);
   }
    } 
    */
vector<vector<int> > array(5, vector<int>(3,0));
    vector<int>::iterator it;
    vector<vector<int> >::iterator iter;
    vector<int> vec_tmp;


    for(iter = array.begin(); iter != array.end(); iter++)
    {
        vec_tmp = *iter;
        for(it = vec_tmp.begin(); it !=vec_tmp.end(); it++)
            cout << *it << " ";
        cout << endl;
    }
}

猜你喜欢

转载自blog.csdn.net/zhaoshuling1109/article/details/80281664