Stack vs Queue
A Stack egy rendezett lista, amelyben a tételek beillesztése és törlése csak az egyik tetején, úgynevezett tetején végezhető el. Ezen okból kifolyólag a verem az utolsó az elsőben (LIFO) adatszerkezetnek tekinthető. A sor egy olyan rendezett lista is, amelyben a tételek beillesztése az egyik végbe, az úgynevezett hátulba, és az elemek törlése a másik végébe, az úgynevezett elülső oldalra történik. Ez a beillesztési és törlési mechanizmus teszi a sorot az első az elsőből (FIFO) adatstruktúrává.
Mi az a verem??
Mint korábban már említettük, a verem olyan adatszerkezet, amelyben elemeket adnak hozzá és távolítanak el csak az egyik tetejük nevű végéből. A halmok csak két alapvető műveletet tesznek lehetővé, úgynevezett push és pop. A push művelet új elemet ad a verem tetejéhez. A pop művelet eltávolítja az elemet a verem tetejéről. Ha a verem már megtelt, amikor egy tolóműveletet hajt végre, akkor verem túlcsordulásának tekintik. Ha egy pop műveletet már egy üres halomon hajtanak végre, akkor verem alulcsordulásának tekintik. A veremben végrehajtható csekély számú művelet miatt korlátozott adatszerkezetnek tekintik. Ezen felül, a push és a pop műveletek meghatározásának módja szerint egyértelmű, hogy az elemek, amelyeket utoljára adtak hozzá a veremnek, előbb a veremből kerülnek ki. Ezért a stackot LIFO adatszerkezetnek tekintik.
Mi a várólista??
A sorban elemeket adnak a sor hátsó részéhez, és eltávolítják a sor elejéről. Mivel az elsőként hozzáadott elemek először eltávolításra kerülnek a sorból, fenntartja a FIFO sorrendet. Az elemek hozzáadásának és eltávolításának ezen sorrendje miatt a sor képviseli a pénztár sorának ötletét. A sor által támogatott általános műveletek a sor és a sorok műveletei. A sorban lévő művelet hozzáad egy elemet a sor hátsó részéhez, míg a sor soros művelete eltávolítja az elemet a sor elejéről. A sorok általában nem korlátozzák a sorhoz hozzáadható elemek számát a memória korlátozása mellett..
Mi a különbség a Stack és a Queue között?
Annak ellenére, hogy mind a halmok, mind a sorok fajta rendezett listák, vannak néhány fontos különbség. Halmokban az elemek hozzáadása vagy törlése csak az egyik tetejéről, az úgynevezett felső oldalról végezhető, míg a sorokban az elemek hozzáadása az egyik végről, az úgynevezett végről történik, az elemek törlése pedig az első, az úgynevezett végről történik. A veremben a veremhez utoljára hozzáadott elemeket először eltávolítják a veremből. Ezért a stackot LIFO adatszerkezetnek tekintik. A sorokban az elsőként hozzáadott elemek először eltávolításra kerülnek a sorból. Ezért a várólistát FIFO adatszerkezetnek kell tekinteni.
Kapcsolódó link:
Különbség a halom és a halom között