Najprv sa pozrieme na čo je zásobník a čo je poradie jednotlivo a potom budeme diskutovať o rozdieloch medzi zásobníkom a frontom.
java dátum na reťazec
Čo je zásobník?
Dátová štruktúra. V prípade poľa je možný náhodný prístup, t. j. ku ktorémukoľvek prvku poľa je možné pristupovať kedykoľvek, zatiaľ čo v zásobníku je možný iba sekvenčný prístup. Je to kontajner, ktorý sa riadi pravidlom vkladania a odstraňovania. Riadi sa zásadou LIFO (posledný dnu, prvý von) v ktorých sa vkladanie a delécia uskutočňuje z jednej strany známej ako a top . V zásobníku môžeme vložiť prvky podobného typu údajov, t. j. prvky rôznych typov údajov nemožno vložiť do rovnakého zásobníka. Tieto dve operácie sa vykonávajú v LIFO, t.j. TAM a pop prevádzka.
Nasledujú operácie, ktoré je možné vykonať so zásobníkom:
V zásobníku, top je ukazovateľ, ktorý sa používa na sledovanie posledného vloženého prvku. Na implementáciu zásobníka by sme mali poznať veľkosť zásobníka. Aby sme získali veľkosť zásobníka, musíme alokovať pamäť. Existujú dva spôsoby implementácie zásobníka:
Čo je to fronta?
A
Podobnosti medzi zásobníkom a frontom.
Medzi zásobníkom a frontom sú dve podobnosti:
Zásobník aj front sú lineárnou dátovou štruktúrou, čo znamená, že prvky sa ukladajú postupne a pristupuje sa k nim v rámci jedného chodu.
Zásobník aj front majú flexibilnú veľkosť, čo znamená, že môžu rásť a zmenšovať sa podľa požiadaviek počas behu.
Rozdiely medzi zásobníkom a frontom
Nasledujú rozdiely medzi zásobníkom a frontom:
Základ pre porovnanie | Stoh | Fronta |
---|---|---|
Princíp | Riadi sa princípom LIFO (Last In- First Out), čo znamená, že prvok, ktorý je vložený ako posledný, by bol vymazaný ako prvý. | Riadi sa princípom FIFO (First In -First Out), čo znamená, že prvok, ktorý sa pridá ako prvý, bude prvým prvkom, ktorý sa odstráni zo zoznamu. |
Štruktúra | Má iba jeden koniec, z ktorého sa uskutočňuje vkladanie aj vymazávanie, a tento koniec je známy ako vrchol. | Má dva konce, t.j. predný a zadný koniec. Predný koniec sa používa na vymazanie, zatiaľ čo zadný koniec sa používa na vkladanie. |
Počet použitých ukazovateľov | Obsahuje iba jeden ukazovateľ známy ako horný ukazovateľ. Horný ukazovateľ obsahuje adresu posledného vloženého alebo najvyššieho prvku zásobníka. | Obsahuje dva ukazovatele predný a zadný ukazovateľ. Predný ukazovateľ obsahuje adresu prvého prvku, zatiaľ čo zadný ukazovateľ obsahuje adresu posledného prvku vo fronte. |
Vykonané operácie | Vykonáva dve operácie, push a pop. Operácia push vloží prvok do zoznamu, zatiaľ čo operácia pop odstráni prvok zo zoznamu. | Vykonáva hlavne dve operácie, zaraďovanie do radu a vyraďovanie z radu. Operácia zaradenia do frontu vykoná vloženie prvkov do frontu, zatiaľ čo operácia vyradenia vykoná vymazanie prvkov z frontu. |
Vyšetrenie prázdneho stavu | Ak je top==-1, znamená to, že zásobník je prázdny. | Ak front== -1 alebo front = zadný+1, znamená to, že front je prázdny. |
Vyšetrenie úplného stavu | Ak top== max-1, táto podmienka znamená, že zásobník je plný. | Ak zadná strana==max-1, táto podmienka znamená, že zásobník je plný. |
Varianty | Nemá žiadne typy. | Je troch typov, ako je prioritný front, kruhový front a dvojitý front. |
Implementácia | Má jednoduchšiu implementáciu. | Má pomerne zložitú implementáciu ako zásobník. |
Vizualizácia | Stack je vizualizovaný ako vertikálna kolekcia. | Front je vizualizovaný ako horizontálna kolekcia. |
vstupný reťazec java