stacks queues stl
S primeri se naučite izvajanja nizov in čakalnih vrst v STL.
Skladi in čakalne vrste so dva zabojnika v STL, ki sta zelo osnovne narave. So najpreprostejši zabojniki, ki imajo široko uporabo pri programiranju programske opreme.
V tej vadnici bomo videli podrobno izvedbo obeh vsebnikov v STL. Z primeri bomo pregledali tudi različne operacije, ki jih podpira sklad in čakalna vrsta.
=> Tukaj bodite pozorni na preprosto vadbeno serijo C ++.
Kaj se boste naučili:
Skladi
Stack vsebnik v STL je vrsta adapterjev za vsebnike. Uporablja se za kopiranje podatkovne strukture skladov v jeziku C ++. Vsebnik sklada je nabor elementov, v katere so elementi vstavljeni na enem koncu in so na istem koncu tudi izbrisani.
Ta skupna točka dodajanja in brisanja je znana kot 'Vrh sklada'.
Slikovni prikaz sklada je prikazan spodaj.
Kot je prikazano v zgornji predstavitvi, je sklad vsebnik, v katerem so elementi dodani in izbrisani z istega konca, imenovanega Top of the stack.
Ker se dodajanje in brisanje dogajata na istem koncu, lahko rečemo, da je vsebnik skladovnice LIFO (zadnji vhod, prvi izhod) vrsta dela. To pomeni, da bo prvi dodan element zadnji, ki bo izbrisan.
Da bi lahko implementirali vsebnik skladov, moramo v naš program vključiti glavo.
#include
Sintaksa splošne deklaracije za vsebnik skladov je:
stack stackName;
Operacije skladovnic
Nato se pogovorimo o različnih operacijah, ki skladiščijo vsebnik v podpori STL.
- potisnite : potisna operacija se uporablja za vstavljanje elementa v sklad. Ta operacija vedno doda elemente na vrhu sklada.
Razmislite o praznem skladu mystack vrste celo število .
Nato v sklad dodamo element 1.
Nato v sklad dodamo element 3.
Glede na predstavitev je kot rezultat potisne elementa dodan element na vrhu sklada. Po vsakem potisnem postopku se velikost sklada poveča za 1.
- pop : operacija pop se uporablja za odstranjevanje elementa iz sklada. Odstranjeni element je tisti, na katerega kaže zgornji del sklada. Kot rezultat operacije pop se velikost sklada zmanjša za 1.
Poglejmo, kako izgleda pop operacija:
Razmislite o stacku mystack kot zgoraj, v katerem smo že potisnili 2 elementa.
Zdaj pokličimo funkcijo pop (). Ko se ta klic izvede, se element na vrhu sklada odstrani in oznaka ‘Top’ kaže na naslednji element, kot je prikazano spodaj.
Če ponovno pokličemo pop (), bo naslednji element (v tem primeru 1) odstranjen, kar bo povzročilo prazen sklad.
brezplačna programska oprema za mala podjetja
- vrh : Vrne zgornji element sklada.
- prazno : Preveri, ali je sklad prazen ali ne.
- velikost: Vrne velikost sklada, tj.število elementov v kupčku.
Spodaj je primer izvajanja sklada za boljše razumevanje operacij.
#include #include using namespace std; void printStack(stack stk) { while (!stk.empty()) { cout << ' ' << stk.top(); stk.pop(); } cout << '
'; } int main () { stack oddstk; oddstk.push(1); oddstk.push(3); oddstk.push(5); oddstk.push(7); oddstk.push(9); cout << 'The stack is : '; printStack(oddstk); cout << '
Size of stack: ' << oddstk.size(); cout << '
Top of stack: ' << oddstk.top(); cout << '
oddstk.pop() : '; oddstk.pop(); printStack(oddstk); cout<<'
Another pop(): '; oddstk.pop(); printStack(oddstk); return 0; }
Zgornji primer jasno prikazuje potisno operacijo, ki ustvari sklad. Prav tako prikazuje sklad po dveh zaporednih pop operacijah.
Tako smo v STL videli sklad in njegovo delovanje. Nadalje bomo v tej vadnici videli podrobno izvedbo še enega preprostega vsebnika STL, ki je »Čakalna vrsta«.
Čakalna vrsta
Čakalna vrsta je še en vsebnik v STL, ki je tudi zelo preprost in uporaben. Vsebnik čakalne vrste je kopija strukture podatkov čakalne vrste v jeziku C ++. Za razliko od sklada sta v vsebniku čakalne vrste dva konca, tj. Spredaj in zadaj.
Elementi se dodajo v čakalno vrsto zadaj, medtem ko se izbrišejo s sprednje strani čakalne vrste. Na splošno vrsta uporablja dogovor FIFO (First in, First Out).
Za izvedbo vsebnika čakalne vrste v programu moramo v kodo vključiti glavo.
#include
Splošna sintaksa za izjavo o čakalni vrsti je:
kako odpreti torrent datoteke na android -
čakalna vrsta ime_ čakalne vrste;
Vsebnik čakalne vrste razglasimo na naslednji način:
Queue myqueue;
Operacije v čakalni vrsti
Zdaj bomo videli različne operacije, ki jih čakalna vrsta podpira.
- potisni: Funkcija 'push' doda element na koncu čakalne vrste, tj. Na zadnji strani čakalne vrste.
- pop: Funkcija 'pop' odstrani prvi element čakalne vrste, tj. Element na sprednji strani čakalne vrste.
Razumejmo push in pop funkcije čakalne vrste.
Razmislite o prazni čakalni vrsti, razglašeni nad myqueue. Zdaj potisnemo sodo številko 2 v čakalno vrsto z operacijo
myqueue.push (2);
Zdaj bo vrsta videti tako:
Nato v čakalno vrsto dodamo ‘4’ s klicem ‘myqueue.push (4)’.
Zdaj je vrsta videti, kot je prikazano spodaj:
Kot je razvidno zgoraj, se elementi potisnejo v vrsto z zadnjega ali zadnjega dela.
Zdaj pa pojdimo na operacijo myqueue.
myqueue.pop ();
Kot vidimo, se pri klicu pop () odstrani element spredaj v čakalni vrsti. To pomeni, da je prvi element, ki je vnesen v čakalno vrsto, prvi element, ki ni iz čakalne vrste.
- spredaj: Ta funkcija vrne sklic na prvi element čakalne vrste.
- nazaj: Nazaj vrne sklic na zadnji element v čakalni vrsti.
- prazno: Preveri, ali je vrsta prazna.
- velikost: Vrne velikost čakalne vrste, to je število elementov v čakalni vrsti.
Spodaj je primer programa, ki prikazuje operacije, ki jih uporablja vsebnik čakalne vrste.
#include #include using namespace std; void printQueue(queue myqueue) { queue secqueue = myqueue; while (!secqueue.empty()) { cout << ' ' << secqueue.front(); secqueue.pop(); } cout << '
'; } int main() { queue myqueue; myqueue.push(2); myqueue.push(4); myqueue.push(6); myqueue.push(8); cout << 'The queue myqueue is : '; printQueue(myqueue); cout << '
myqueue.size() : ' << myqueue.size(); cout << '
myqueue.front() : ' << myqueue.front(); cout << '
myqueue.back() : ' << myqueue.back(); cout << '
myqueue.pop() : '; myqueue.pop(); printQueue(myqueue); return 0; }
Izhod:
Čakalna vrsta v čakalni vrsti je: 2 4 6 8
myqueue.size (): 4
myqueue.front (): 2
myqueue.back (): 8
myqueue.pop (): 4 6 8
Kot je prikazano zgoraj, najprej razglasimo vsebnik čakalne vrste. Nato z uporabo potisne vanjo dodamo prva štiri soda števila. Nato element iztaknemo iz čakalne vrste in prikažemo spremenjeno vrsto.
Zaključek
S tem smo prišli do konca te vadnice o skladih in vrstah. Kot smo že omenili, so to najpreprostejši zabojniki, ki jih imamo v STL. Druga različica vsebnika čakalne vrste je znana kot 'Prednostna vrsta'.
V naši prihajajoči vadnici bomo razpravljali o prednostni vrsti v STL !!
=> Obiščite tukaj, če se želite naučiti C ++ iz nič.