Rozdíl Mezi Zásobníkem A Frontou

Rozdíl Mezi Zásobníkem A Frontou
Rozdíl Mezi Zásobníkem A Frontou

Video: Rozdíl Mezi Zásobníkem A Frontou

Video: Rozdíl Mezi Zásobníkem A Frontou
Video: Skoro vše o diabetické ketoacidóze 2024, Smět
Anonim

Stack vs Queue

Stack je seřazený seznam, do kterého lze vkládat a mazat položky seznamu pouze na jednom konci, který se nazývá horní. Z tohoto důvodu je zásobník považován za datovou strukturu Last in First Out (LIFO). Fronta je také seřazený seznam, ve kterém se vkládání položek seznamu provádí na jednom konci, který se nazývá zadní, a mazání položek se provádí na druhém konci, který se nazývá přední. Tento mechanismus vkládání a mazání dělá z fronty datovou strukturu First in First out (FIFO).

Co je to Stack?

Jak již bylo zmíněno dříve, stack je datová struktura, ve které jsou prvky přidávány a odebírány pouze z jednoho konce zvaného horní část. Zásobníky umožňují pouze dvě základní operace zvané push a pop. Operace push přidá nový prvek do horní části zásobníku. Pop operace odstraní prvek z horní části zásobníku. Pokud je zásobník již plný, je při provádění operace push považován za přetečení zásobníku. Pokud se popová operace provádí na již prázdném zásobníku, považuje se to za podtečení zásobníku. Vzhledem k malému počtu operací, které lze na zásobníku provést, je považován za omezenou datovou strukturu. Kromě toho je podle způsobu, jakým jsou definovány operace push a pop, jasné, že prvky, které byly přidány jako poslední do zásobníku, nejdříve vyjdou ze zásobníku. Zásobník je proto považován za datovou strukturu LIFO.

Rozdíl mezi C Stack Queue
Rozdíl mezi C Stack Queue

Co je to fronta?

Ve frontě se prvky přidávají ze zadní části fronty a odstraňují se z přední části fronty. Protože prvky, které jsou přidány jako první, budou nejprve odebrány z fronty, udržuje pořadí FIFO. Kvůli tomuto pořadí přidávání a odebírání prvků představuje fronta myšlenku řádku pokladny. Obecné operace podporované frontou jsou operace en-queue a de-queue. Operace zařazení do fronty přidá prvek do zadní části fronty, zatímco operace odstranění fronty odebere prvek z přední části fronty. Obecně fronty nemají omezení počtu prvků, které lze přidat do fronty kromě omezení paměti.

Jaký je rozdíl mezi Stack a Queue?

I když jsou zásobníky i fronty druhy seřazených seznamů, mají některé důležité rozdíly. V hromadách lze přidávání nebo mazání položek provádět pouze z jednoho konce zvaného horní, zatímco ve frontách se přidávání položek provádí z jednoho konce zvaného zezadu a odstraňování položek se provádí z druhého konce zvaného přední. Ve stohu budou položky, které jsou do stohu přidány jako poslední, ze zásobníku odebrány jako první. Zásobník je proto považován za datovou strukturu LIFO. Ve frontách budou položky, které jsou přidány jako první, odebrány z fronty jako první. Proto je fronta považována za datovou strukturu FIFO.

Související odkaz:

Rozdíl mezi hromadou a hromadou

Doporučená: