Sadržaj
Red čekanja je dinamička podatkovna struktura iz koje možete pristupiti podacima u procesu "prvi dolazak, prvi izlazak". Stog je dinamička podatkovna struktura iz koje možete pristupiti podacima u postupku "zadnja ulaznica, prva izlazak". Ako implementirate stog, samo će zadnja stavka koju unesete postati dostupna. Ako želite pristupiti podacima na kojima se temelji (prva stavka koju ste stavili), tada ćete je tretirati kao red. Da biste to učinili, morate implementirati drugu hrpu.
smjerovi
Implementacija reda pomoću dva hrpe je jednostavna (Ablestock.com/AbleStock.com/Getty Images)-
U uređivaču teksta napišite kôd za implementaciju skupa u skladu s postupcima i funkcijama dostupnim u programskom jeziku koji želite koristiti. Nazovite ovaj stack_Entry stog. Stavite podatke u Stack_Entry (mnogi programski jezici koriste naredbu "push" za dodavanje podataka). Na primjer, pokrenite "push" naredbu u Stack_Entry za unos podataka sljedećim redoslijedom: "A", "B" i "C". "A" je prvi koji ulazi i nalazi se na dnu hrpe. Ako želite pristupiti ovoj prvoj stavci, podatke tretirate kao red.
-
Napišite kod za implementaciju drugog hrpe prema postupcima i funkcijama dostupnim u programskom jeziku koji želite koristiti. Nazovite ga StackSafe (mnogi programski jezici koriste naredbu "pop" za uklanjanje podataka iz stog).
-
Uklonite svaku stavku iz Stack_Insert stog i smjestite ih u Sleep Stack. Općenito, uklanjate Stack_Input stavku i smjestite je u StackAid. Zatim provjerite je li Stack_Input prazan. Ako nije prazan, uklonite sljedeću stavku iz ulaza Stack_In i stavite je u Sleep Stack. Ponovite sve dok stack_Input nije prazan. U našem primjeru, uklonite "C" iz Stack_Input i stavite ga u Stack_Aid. Provjerite je li InputPilot prazan. Uklonite "B" iz Stack_Input i postavite ga na Stack_Aid. Provjerite je li InputPilot prazan. Uklonite "A" iz Stack_Input i postavite ga na Stack_Aid. Provjerite je li InputPilot prazan.
-
Kada je Stack_Path stog prazan, stavka koja je bila u bazi Stack_Input ("A" u našem primjeru) sada je na vrhu Stack_Aside. Uklonite stavku SleepSeat i pretvorili ste svoj stack u red. Vaša prva stavka u stogu sada je prva stavka koja će se izvući (prva u, prva iz, ili FIFO u prvom, prvi van).
Dvije gomile jednake su redu
savjeti
- Većina programskih jezika nudi funkcije za obradu podataka u vektoru kao da je u redu ili stog. To jest, možete pristupiti i zadnjoj i prvoj poziciji vektora bez obzira s kojega kraja unosite podatke. Ako su vaši podaci u vektoru, ne morate brinuti o tome da im pristupite kao red ili stog. Ali ako su vaši podaci u dinamičkoj gomili i želite je tretirati kao red, trebali biste implementirati drugi stog.
Što vam je potrebno
- Uređivač teksta
- Prevoditelj ili tumač za neki programski jezik