logo

Vektorien vektorit C++ STL:ssä esimerkein

Edellytys: Vektorit C++ STL:ssä

Vektorit Tunnetaan dynaamisina taulukoina, joiden koko voi muuttua automaattisesti, kun elementti lisätään tai poistetaan, ja säilö käsittelee niiden tallennuksen automaattisesti.



Vektorien vektori on kaksiulotteinen vektori vaihtelevalla määrällä rivejä, joissa jokainen rivi on vektori. Jokainen vektorin indeksi tallentaa vektorin, jonka läpi voidaan kulkea ja jota voidaan käyttää iteraattorit . Se on samanlainen kuin an Joukko vektoreita mutta dynaamisilla ominaisuuksilla.

Syntaksi:

vector vec;>

Esimerkki:



 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>

Lisäys vektorien vektoriin

Elementit voidaan lisätä vektoriin käyttämällä työnnä takaisin() C++ STL:n toiminto.

Alla oleva esimerkki havainnollistaa lisäysoperaation vektorivektorissa. Koodi luo 2D-vektorin push_back()-funktion avulla ja näyttää sitten matriisin.



Syntaksi:

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

Esimerkki 1:

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

Tämä funktio työntää vektorin v2 vektoreihin v1. Siksi v1 muuttuu { {1, 2, 3} }.

Esimerkki 2:

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

Tämä funktio työntää vektorin v2 olemassa olevaan vektorien v1 vektoriin ja v1:stä tulee v1 = { {1, 2, 3}, {4, 5, 6} }

Alla on esimerkki, joka havainnollistaa insertiota vektorivektoriin.




// 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>> vec; // Sarakkeeseen lisättävät elementit int num = 10; // Elementtien lisääminen vektoriin for (int i = 0; i // Vektori sarakeelementtien tallentamiseen vektori v1; for (int j = 0; j v1.push_back(num); num += 5; } // Työntäminen taaksepäin 1D-vektorin yläpuolelle // luodaksesi 2D-vektorin vec.push_back(v1); } // 2D-vektorin näyttäminen (int i = 0; i for (int j = 0; j cout<< vec[i][j] << ' '; cout << endl; } return 0; }>

>

>

java arraylist
Lähtö:

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

Poistaminen tai poistaminen vektoreista

Vektorivektorista voidaan poistaa elementtejä käyttämällä pop_back() C++ STL:n toiminto.

Alla olevassa esimerkissä havainnollistetaan poistooperaatiota vektorivektorissa. Koodi poistaa elementit 2D-vektorista pop_back()-funktion avulla ja näyttää sitten matriisin.
Syntaksi:

vector_name[row_position].pop_back()>

Esimerkki 1: Olkoon vektorien vektori vektori v = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }

 v[2].pop_back()>

Tämä toiminto poistaa elementin 9 viimeisestä rivivektorista. Siksi v:sta tulee { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8 } }.

Esimerkki 2:

 v[1].pop_back()>

Tämä toiminto poistaa elementin 6 viimeisen toisen rivin vektorista. Siksi v:sta tulee { { { 1, 2, 3 }, { 4, 5 }, { 7, 8 } }.

Alla on esimerkki vektorien vektorista poistamisen osoittamiseksi.




// 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 } }; // Elementtien poistaminen vektorin vector[2] viimeiseltä riviltä //.pop_back(); vec[1].pop_back(); // 2D-vektorin näyttäminen kohteelle (int i = 0; i<3; i++) { for ( auto it = vec[i].begin(); it != vec[i].end(); it++) cout << *it << ' '; cout << endl; } return 0; }>

>

>

Lähtö:

 1 2 3 4 5 7 8>

Vektorivektorin läpikulku

Vektorien vektori voidaan kulkea käyttämällä iteraattorit C++:ssa. Seuraava koodi havainnollistaa 2D-vektorin läpikulkua.

Syntaksi:

 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) } }>

Alla on esimerkki vektorivektorin kulkemisen havainnollistamiseksi.

java sekoitetaan int




// 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 } }; // 2D-vektorin näyttäminen kohteelle (int i = 0; i<3; i++) { for ( auto it = vec[i].begin(); it != vec[i].end(); it++) cout << *it << ' '; cout << endl; } return 0; }>

>

>

Lähtö:

 1 2 3 4 5 6 7 8 9>