vektory jsou stejná jako dynamická pole se schopností automaticky změnit velikost při vložení nebo odstranění prvku, přičemž jejich ukládání je automaticky řešeno kontejnerem.
vector::push_back()Funkce push_back() se používá k vkládání prvků do vektoru zezadu. Nová hodnota se vloží do vektoru na konec, za aktuální poslední prvek a velikost kontejneru se zvětší o 1.
Syntax:
vectorname.push_back(value) Parameters : The value to be added in the back is passed as the parameter Result : Adds the value mentioned as the parameter to the back of the vector named as vectorname>
Příklady:
Input: myvector = {1, 2, 3, 4, 5}; myvector.push_back(6); Output: 1, 2, 3, 4, 5, 6 Input: myvector = {5, 4, 3, 2, 1}; myvector.push_back(0); Output: 5, 4, 3, 2, 1, 0>
Chyby a výjimky
1. Silná záruka výjimky – pokud je vyvolána výjimka, v kontejneru nedochází k žádným změnám.
2. Pokud hodnota předaná jako argument není podporována vektorem, vykazuje nedefinované chování.
mergesort java
C++
// CPP program to illustrate> // push_back() function> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >mujvektor{ 1, 2, 3, 4, 5 };> > myvector.push_back(6);> > > // Vector becomes 1, 2, 3, 4, 5, 6> > > for> (> auto> it = myvector.begin(); it != myvector.end(); ++it)> > cout <<> << *it;> }> |
>
java fazole
>Výstup
1 2 3 4 5 6>vector::pop_back()()
Funkce pop_back() se používá k vytažení nebo odstranění prvků z vektoru zezadu. Hodnota se odstraní z vektoru od konce a velikost kontejneru se zmenší o 1.
Syntaxe:
vectorname.pop_back() Parameters : No parameters are passed Result : Removes the value present at the end or back of the given vector named as vectorname>
Příklady:
Input : myvector = {1, 2, 3, 4, 5}; myvector.pop_back(); Output :1, 2, 3, 4>
Input : myvector = {5, 4, 3, 2, 1}; myvector.pop_back(); Output :5, 4, 3, 2>
Chyby a výjimky
1. No-Throw-Garantee – Pokud kontejner není prázdný, funkce nikdy nevyvolá výjimky.
2. Pokud je vektor prázdný, vykazuje nedefinované chování.
průmysl a továrna
C++
// CPP program to illustrate> // pop_back() function> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >mujvektor{ 1, 2, 3, 4, 5 };> > myvector.pop_back();> > > // Vector becomes 1, 2, 3, 4> > > for> (> auto> it = myvector.begin(); it != myvector.end(); ++it)> > cout <<> << *it;> }> |
>
>Výstup
1 2 3 4>
Odstraňuje pop_back() hodnoty spolu s prvky?
Když je zavolána funkce pop_back(), je poslední prvek odstraněn, hodnoty a Prvky jsou v tomto případě jednou ze stejných věcí. Je zavolán destruktor uloženého objektu a délka vektoru je odstraněna o 1. Pokud se kapacita kontejneru nesníží, můžete stále přistupovat k předchozímu paměťovému umístění, ale v tomto případě není možné přistupovat k již vyskakovanému prvek, protože to bude mít za následek nedefinované chování .
Aplikace: push_back() a pop_back()
Pokud je vektor prázdný, přidejte k němu celá čísla pomocí funkce push_back a poté vypočítejte jeho velikost.
Input : 1, 2, 3, 4, 5, 6 Output : 6>
Algoritmus
pandy lok
1. Přidejte prvky do vektoru pomocí funkce push_back
2. Zkontrolujte, zda je velikost vektoru 0, pokud ne, inkrementujte proměnnou čítače inicializovanou jako 0 a vysuňte zadní prvek.
3. Tento krok opakujte, dokud velikost vektoru nebude 0.
4. Vytiskněte konečnou hodnotu proměnné.
C++
// CPP program to illustrate> // Application of push_back and pop_back function> #include> #include> using> namespace> std;> > int> main()> {> > int> count = 0;> > vector<> int> >myvector;> > myvector.push_back(1);> > myvector.push_back(2);> > myvector.push_back(3);> > myvector.push_back(4);> > myvector.push_back(5);> > myvector.push_back(6);> > while> (!myvector.empty()) {> > count++;> > myvector.pop_back();> > }> > cout << count;> > return> 0;> }> |
databáze
>
>Výstup
6>
Podívejme se na rozdíly v tabulkové formě, jak je uvedeno níže:
vector::push_back() | vector::pop_back() |
Slouží k přidání nového prvku na konec vektoru. | Používá se k odstranění nového prvku na konci vektoru. |
Jeho syntaxe je -: push_back(hodnota); | Jeho syntaxe je -: pop_back(); |
Jeho parametrem je hodnota, kterou chceme přidat na konec vektoru. | Nepotřebuje žádné parametry. |
Nemá žádný návratový typ. | Nemá žádnou návratovou hodnotu. |
Jeho složitost je konstantní. | Jeho složitost je konstantní. |