Môžeme implementovať zásobník a front pomocou prepojeného zoznamu?
Môžeme implementovať zásobník a front pomocou prepojeného zoznamu?

Video: Môžeme implementovať zásobník a front pomocou prepojeného zoznamu?

Video: Môžeme implementovať zásobník a front pomocou prepojeného zoznamu?
Video: CS50 2013 - Week 8 2024, Apríl
Anonim

Každý uzol má hodnotu a a odkaz do ďalšieho uzla. Dve populárne aplikácie prepojený zoznam sú zásobník a rad . Fronta : Fronta je dátová štruktúra, ktorá využíva princíp First in First Out (FIFO). Fronta môže byť implementovaná podľa stoh , pole a prepojený zoznam.

Môžeme teda implementovať front pomocou prepojeného zoznamu?

A fronte môže byť ľahko implementované pomocou a prepojený zoznam . V jednotlivo implementácia prepojeného zoznamu , radenie sa deje na konci zoznam a vyraďovanie položiek sa deje na čele zoznam . Musíme zachovať ukazovateľ na posledný uzol, aby sme zachovali účinnosť O(1) pre vkladanie.

Následne je otázkou, či je prepojený zoznam zásobník? A stoh je dátová štruktúra s určitým rozhraním a správaním: do nej možno pridávať prvky stoh s „push“a odstránené pomocou „pop“a odstraňujú sa v poradí posledný-v-prvý-výstup. A prepojený zoznam je dátová štruktúra s určitým vzťahom medzi prvkami v pamäti.

Čo sa týka tohto, môžeme implementovať zásobník pomocou frontu?

Implementovať a stohovať pomocou slobodný fronte . my sú dané fronte dátová štruktúra, úlohou je implementovať zásobník pomocou len daný fronte dátová štruktúra. Toto riešenie to predpokladá môžeme nájsť veľkosť fronte v ktoromkoľvek bode. Cieľom je ponechať novo vložený prvok vždy vzadu fronte , pričom poradie predchádzajúcich prvkov bude rovnaké.

Aké sú aplikácie fronty?

Aplikácie frontu Obsluhovanie požiadaviek na jednom zdieľanom zdroji, ako je tlačiareň, plánovanie úloh CPU atď. V skutočnom scenári telefónne systémy Call Center používa fronty zadržiavať ľudí, ktorí im volajú, v objednávke, kým sa neuvoľní servisný zástupca. Spracovanie prerušení v systémoch reálneho času.

Odporúča: