Zásobník v poradí
Zásobník je usporiadaný zoznam, v ktorom je možné vkladať a mazať položky zoznamu iba na jednom konci nazývanom horný. Z tohto dôvodu sa zásobník považuje za dátovú štruktúru Last in First out (LIFO). Fronta je tiež usporiadaný zoznam, do ktorého sa vkladajú položky zoznamu na jeden koniec, ktorý sa nazýva zozadu, a vymazanie položiek sa vykonáva na druhom konci, ktorý sa nazýva front. Tento mechanizmus vloženia a odstránenia robí z frontu dátovú štruktúru First in First out (FIFO).
Čo je to Stack?
Ako už bolo spomenuté, zásobník je dátová štruktúra, v ktorej sú prvky pridané a odstránené iba z jedného konca nazývaného vrchol. Zásobníky povoľujú iba dve základné operácie nazývané push a pop. Operácia push pridá nový prvok na vrch stohu. Operácia pop odstráni prvok z vrchu stohu. Ak je zásobník už plný, po vykonaní operácie zatlačenia sa považuje za pretečenie zásobníka. Ak sa pop operácia vykonáva na už prázdnom zásobníku, považuje sa to za podtok zásobníka. Z dôvodu malého počtu operácií, ktoré by sa mohli vykonávať na zásobníku, sa považuje za obmedzenú štruktúru údajov. Ďalej je podľa spôsobu, ako sú definované tlačené a popové operácie, zrejmé, že prvky, ktoré boli do zásobníka pridané ako posledné, idú zo zásobníka ako prvé. Zásobník sa preto považuje za dátovú štruktúru LIFO.
Čo je Queue?
Vo fronte sú prvky pridané zo zadnej časti frontu a odstránené z prednej časti frontu. Pretože prvky, ktoré sa pridajú ako prvé, sa najskôr odstránia z frontu, zachováva poradie FIFO. Z dôvodu poradia pridávania a odoberania prvkov predstavuje rad front nápad na riadok pokladnice. Všeobecné operácie podporované frontom sú operácie frontu a fronty. Operácia vo fronte pridá prvok do zadnej časti frontu, zatiaľ čo operácia z frontu odstráni prvok z prednej časti frontu. Vo všeobecnosti fronty nemajú obmedzený počet prvkov, ktoré môžu byť pridané do frontu okrem obmedzení pamäte..
Aký je rozdiel medzi zásobníkmi a frontami?
Aj keď sú komíny aj fronty druhmi usporiadaných zoznamov, majú niektoré dôležité rozdiely. V stohoch je možné pridávať alebo odstraňovať položky iba z jedného konca nazývaného horný, zatiaľ čo v radoch sa pridávanie položiek vykonáva z jedného konca nazývaného zadný a odstraňovanie položiek sa vykonáva z druhého konca nazývaného front. V zásobníku sa položky, ktoré sa do zásobníka pridajú ako posledné, odstránia ako prvé zo zásobníka. Zásobník sa preto považuje za dátovú štruktúru LIFO. Vo frontoch sa položky, ktoré sa pridajú ako prvé, odstránia z frontu ako prvé. Preto sa rad považuje za štruktúru údajov FIFO.
Súvisiaci odkaz:
Rozdiel medzi zásobami a haldy