एक वेक्टर का वेक्टर 2D वेक्टर कहलाता है।
एल्गोरिदम
शुरुआत
2D वेक्टर टाइप का वेरिएबल v घोषित करें
वेक्टर v में मान इनिशियलाइज़ करें
"2D वेक्टर है:" प्रिंट करें
for (int i = 0; i < v.size(); i++)
for (int j = 0; j < v[i].size(); j++)
2D वेक्टर v[i][j] का मान प्रिंट करें
समाप्ति
उदाहरण
#include <iostream>
#include <vector> // C++ में 2D वेक्टर के लिए हेडर फ़ाइल
using namespace std;
int main() {
vector<vector<int> > v{
{ 4, 5, 3, 10 }, // 2D वेक्टर को मानों के साथ इनिशियलाइज़ करना
{ 2, 7, 11 },
{ 3, 2, 1, 12 }
};
cout << "2D वेक्टर है:" << endl;
for (int i = 0; i < v.size(); i++) { // 2D वेक्टर प्रिंट करना
for (int j = 0; j < v[i].size(); j++)
cout << v[i][j] << " ";
cout << endl;
}
return 0;
}
आउटपुट
2D वेक्टर है:
4 5 3 10
2 7 11
3 2 1 12
डायनामिक 2D वेक्टर निर्माण
रनटाइम पर साइज़ के साथ
int rows, cols;
cin >> rows >> cols;
vector> matrix(rows, vector(cols, 0)); // rows x cols, 0 से भरा
// इनपुट लें
for (int i = 0; i < rows; i++)
for (int j = 0; j < cols; j++)
cin >> matrix[i][j];
अनियमित (जैग्ड) 2D वेक्टर
vector> jagged = {
{1, 2, 3},
{4, 5},
{6, 7, 8, 9}
};
// प्रत्येक रो का अलग साइज़ हो सकता है
उपयोगी ऑपरेशन्स
| ऑपरेशन | कोड |
|---|---|
| रो जोड़ना | matrix.push_back({1,2,3}); |
| कॉलम जोड़ना (सभी रो में) | for(auto& row: matrix) row.push_back(0); |
| एलिमेंट एक्सेस | matrix[i][j] या matrix.at(i).at(j) (बाउंड्स चेकिंग के साथ) |
| साइज़ प्राप्त करना | matrix.size() (रो), matrix[i].size() (कॉलम) |