Možemo li implementirati stog i red koristeći povezanu listu?
Možemo li implementirati stog i red koristeći povezanu listu?

Video: Možemo li implementirati stog i red koristeći povezanu listu?

Video: Možemo li implementirati stog i red koristeći povezanu listu?
Video: 4.3 Queue Implementation using Linked List in C | Data Structure Tutorials 2024, Marš
Anonim

Svaki čvor ima vrijednost i a veza do sledećeg čvora. Dvije popularne aplikacije povezana lista su stek i red . Red : Red je struktura podataka, koja koristi prvi u prvi prvi (FIFO) princip. Red može biti implementirano by stog , niz i povezana lista.

Shodno tome, možemo li implementirati red pomoću povezane liste?

A queue može biti lako implementirano korištenjem a povezana lista . Pojedinačno implementacija povezane liste , stavljanje u red se dešava na repu lista a uklanjanje stavki iz reda se dešava na čelu lista . Moramo održavati pokazivač na posljednji čvor kako bismo zadržali O(1) efikasnost za umetanje.

Nakon toga, postavlja se pitanje da li je povezana lista stek? A stog je struktura podataka sa određenim interfejsom i ponašanjem: elementi se mogu dodati u stog sa “push” i uklanjaju se sa “pop”, a uklanjaju se po redoslijedu Last-In-First-Out. A povezana lista je struktura podataka sa određenim odnosom između elemenata u memoriji.

S tim u vezi, možemo li implementirati stek koristeći red čekanja?

Implementirati a stack koristeći single queue . Mi su dati queue strukturu podataka, zadatak je da implementirati stack koristeći samo dato queue struktura podataka. Ovo rješenje pretpostavlja da možemo pronađite veličinu queue u bilo kom trenutku. Ideja je da se novoumetnuti element uvijek drži pozadi queue , zadržavajući isti redoslijed prethodnih elemenata.

Koje su primjene redova čekanja?

Aplikacije za red čekanja Posluživanje zahtjeva na jednom zajedničkom resursu, kao što je pisač, zakazivanje zadataka CPU-a itd. U stvarnom životu, telefonski sistemi Call centra koristi redove držati ljude koji ih zovu u redu, sve dok predstavnik servisa ne bude slobodan. Rukovanje prekidima u sistemima u realnom vremenu.

Preporučuje se: