vector<vector<int>> vec( n , vector<int> (m, 0));
where: n is number of ROWS,
m is number of COLUMNS
So result will be ( Let n = 2, m = 3 )
[[ 0, 0, 0],
[ 0, 0, 0]]
( 2 x 3 )
For user defined size:
vector<vector<int>> vec( n );
where n -> number of rows
vector<vector<int>> vec( n , vector<int> (m, 0));
where n -> number of rows
where m -> number of columns (all initialized with 0)
#include<vector>
#include<algorithm>
// all the std and main syntax ofcourse.
vector<int> pack = {1,2,3} ;
// To add at the END
pack.push_back(6); // {1,2,3,6}
// OR
// To add at BEGGINING
pack.insert(pack.begin(),6) // {6,1,2,3,}
// CPP program
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n = 3;
int m = 4;
/*
We create a 2D vector containing "n"
elements each having the value "vector<int> (m, 0)".
"vector<int> (m, 0)" means a vector having "m"
elements each of value "0".
Here these elements are vectors.
*/
vector<vector<int>> vec( n , vector<int> (m, 0));
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cout << vec[i][j] << " ";
}
cout<< endl;
}
return 0;
}
// CPP program
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n = 3;
int m = 4;
/*
We create a 2D vector containing "n"
elements each having the value "vector<int> (m, 0)".
"vector<int> (m, 0)" means a vector having "m"
elements each of value "0".
Here these elements are vectors.
*/
vector<vector<int>> vec( n , vector<int> (m, 0));
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cout << vec[i][j] << " ";
}
cout<< endl;
}
return 0;
}
// CPP program
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n = 3;
int m = 4;
/*
We create a 2D vector containing "n"
elements each having the value "vector<int> (m, 0)".
"vector<int> (m, 0)" means a vector having "m"
elements each of value "0".
Here these elements are vectors.
*/
vector<vector<int>> vec( n , vector<int> (m, 0));
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cout << vec[i][j] << " ";
}
cout<< endl;
}
return 0;
}
vector<vector<int>> vec(N, vector<int> (M, INT_MAX));
Explanation::
vector<vector<int>> -- will take the formed container
N -- Think like row of 2d Matrix
vector<int> (M, INT_MAX) -- In each row, there is again a vector associated with it,
that will formed 2d array.