logo

C++ STL のベクトルのベクトルと例

前提条件: C++ STL のベクトル

ベクトル これらは動的配列として知られており、要素の挿入または削除時に自動的にサイズを変更する機能があり、そのストレージはコンテナーによって自動的に処理されます。



ベクトルのベクトル です 二次元ベクトル 行数が可変で、各行はベクトルです。ベクトルの各インデックスには、次を使用して走査およびアクセスできるベクトルが格納されます。 イテレータ 。それは、 ベクトルの配列 ただし、動的プロパティを備えています。

構文:

vector vec;>

例:



 vector vec{ { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9, 4 } }; where vec is the vector of vectors with different number of elements in different rows>

ベクトルのベクトルへの挿入

要素は、 プッシュバック() C++ STL の関数。

以下の例は、ベクトルのベクトルでの挿入操作を示しています。このコードは、push_back() 関数を使用して 2D ベクトルを作成し、行列を表示します。



構文:

vector_name.push_back(value) where value refers to the element to be added in the back of the vector>

例 1:

 v2 = {1, 2, 3} v1.push_back(v2);>

この関数は、ベクトル v2 をベクトル v1 のベクトルにプッシュします。したがって、v1 は { {1, 2, 3} } になります。

例 2:

 v2 = {4, 5, 6} v1.push_back(v2);>

この関数は、ベクトル v2 をベクトル v1 の既存のベクトルにプッシュし、v1 は v1 = { {1, 2, 3}, {4, 5, 6} } になります。

以下は、ベクトルのベクトルへの挿入を示す例です。




順序トラバーサル

// C++ program to demonstrate insertion> // into a vector of vectors> > #include> #include> using> namespace> std;> > // Defining the rows and columns of> // vector of vectors> #define ROW 4> #define COL 5> > int> main()> {> >// Initializing the vector of vectors> >vectorint>> ベック; // 列に挿入する要素 int num = 10; // 要素をベクトルに挿入 for (int i = 0; i // 列要素を格納するベクトル v1; for (int j = 0; j v1.push_back(num); num += 5; } // 1D ベクトルの上にプッシュバックして // 2D ベクトルを作成します vec.push_back(v1); } // 2D ベクトルを表示します(int i = 0; i for (int j = 0; j cout<< vec[i][j] << ' '; cout << endl; } return 0; }>

>

>

出力:

 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 105>

ベクトルのベクトル内の削除または削除

要素は、次のコマンドを使用してベクトルのベクトルから削除できます。 ポップバック() C++ STL の関数。

以下の例は、ベクトルのベクトルでの削除操作を示しています。このコードは、pop_back() 関数を使用して 2D ベクトルから要素を削除し、行列を表示します。
構文:

vector_name[row_position].pop_back()>

例 1: ベクトルのベクトルを、vector v = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } } とします。

 v[2].pop_back()>

この関数は、最後の行ベクトルから要素 9 を削除します。したがって、v は { { 1, 2, 3 }、{ 4, 5, 6 }、{ 7, 8 } } になります。

例 2:

javatpoint java
 v[1].pop_back()>

この関数は、最後の 2 番目の行ベクトルから要素 6 を削除します。したがって、v は { { 1, 2, 3 }、{ 4, 5 }、{ 7, 8 } } になります。

以下は、ベクトルのベクトルからの削除を示す例です。




// C++ program to demonstrate removal> // from a vector of vectors> > #include> #include> using> namespace> std;> > // Driver Method> int> main()> {> >// Initializing 2D vector 'vect' with> >// sample values> >vectorint>> vec{ { 1, 2, 3 }、{ 4, 5, 6 }、{ 7, 8, 9 } }; // ベクトルの最後の行から要素を削除 // vec[2].pop_back(); vec[1].pop_back(); // (int i = 0; i の 2D ベクトルを表示します<3; i++) { for ( auto it = vec[i].begin(); it != vec[i].end(); it++) cout << *it << ' '; cout << endl; } return 0; }>

ubuntuのipconfig

>

>

出力:

 1 2 3 4 5 7 8>

ベクトルのベクトルの走査

ベクトルのベクトルは、 イテレータ C++で。次のコードは、2D ベクトルの走査を示します。

構文:

 for i in [0, n) { for (iterator it = v[i].begin(); it != v[i].end(); it++) { // Operations to be done // For example to print print(*it) } }>

以下は、ベクトルのベクトル内でのトラバーサルを示す例です。




// C++ code to demonstrate traversal> // of a 2D vector> > #include> #include> using> namespace> std;> > // Driver Method> int> main()> {> >// Initializing 2D vector 'vect' with> >// sample values> >vectorint>> vec{ { 1, 2, 3 }、{ 4, 5, 6 }、{ 7, 8, 9 } }; // (int i = 0; i の 2D ベクトルを表示します<3; i++) { for ( auto it = vec[i].begin(); it != vec[i].end(); it++) cout << *it << ' '; cout << endl; } return 0; }>

>

>

出力:

 1 2 3 4 5 6 7 8 9>