Különbség a verem és a sor között

Különbség a verem és a sor között
Különbség a verem és a sor között

Videó: Különbség a verem és a sor között

Videó: Különbség a verem és a sor között
Videó: Kijelzők és egyebek - Mit kell róluk tudni? Képbehozó #1 2024, November
Anonim

Stack vs Queue

A verem egy rendezett lista, amelyben a listaelemek beszúrása és törlése csak az egyik végén, a tetején végezhető el. Emiatt a verem a Last in First out (LIFO) adatszerkezetnek minősül. A Queue egy rendezett lista is, amelyben a listaelemek beszúrása az egyik végén, a hátsóban, az elemek törlése pedig a másik végén, az elülsőben történik. Ez a beillesztési és törlési mechanizmus FIFO (First in First Out) adatstruktúrává teszi a sort.

Mi az a Stack?

Amint korábban említettük, a verem egy olyan adatstruktúra, amelyben az elemeket csak az egyik végéről, a tetejéről adják hozzá és távolítják el. A veremek csak két alapvető műveletet tesznek lehetővé, amelyeket push-nak és pop-nak neveznek. A push művelet egy új elemet ad a verem tetejére. A pop művelet eltávolít egy elemet a verem tetejéről. Ha a verem már megtelt, akkor a push művelet végrehajtásakor verem túlcsordulásnak minősül. Ha egy pop műveletet hajtanak végre egy már üres veremen, az verem alulcsordulásnak minősül. A veremen végrehajtható műveletek kis száma miatt korlátozott adatszerkezetnek tekinthető. Ezen túlmenően, a push és pop műveletek meghatározásának módja szerint egyértelmű, hogy a verembe utoljára hozzáadott elemek először kerülnek ki a veremből. Ezért a verem LIFO adatszerkezetnek minősül.

Kép
Kép
Kép
Kép

Mi az a sor?

A várólistában az elemek a sor hátuljáról kerülnek hozzáadásra, és a sor elejéről kerülnek eltávolításra. Mivel az elsőként hozzáadott elemeket a rendszer először eltávolítja a sorból, fenntartja a FIFO sorrendet. Az elemek hozzáadásának és eltávolításának ilyen sorrendje miatt a várólista egy pénztári vonal ötletét jelenti. A sor által támogatott általános műveletek a sorba állítás és a sor eltávolítása műveletek. Az En-queue művelet hozzáad egy elemet a sor hátuljához, míg a sor feloldása művelet eltávolít egy elemet a sor elejéről. Általánosságban elmondható, hogy a sorokban a memóriakorlátokon kívül nincs korlátozva a sorhoz hozzáadható elemek száma.

Mi a különbség a Stack és a Queue között?

Annak ellenére, hogy mind a veremek, mind a sorok rendezett listák, van néhány fontos különbség. Veremben az elemek hozzáadása vagy törlése csak az egyik végéről, a legfelsőről, a sorokban az egyik végéről, a hátsóról, az elemek törlése pedig a másik végéről, az elejéről történik. Egy veremben a veremhez utolsóként hozzáadott elemek kerülnek először a veremből. Ezért a verem LIFO adatszerkezetnek tekinthető. A sorokban az elsőként hozzáadott elemek kerülnek először a sorból. Ezért a sor FIFO adatszerkezetnek minősül.

Kapcsolódó link:

Különbség a verem és a kupac között

Ajánlott: