Vsebina
Čakalna vrsta je dinamična podatkovna struktura, iz katere lahko dostopate do podatkov v postopku »prvi prispe, prvi izstop«. Stack je dinamična podatkovna struktura, iz katere lahko dostopate do podatkov v postopku "zadnja v, prva-ven". Če izvedete sklad, bo na voljo le zadnji element, ki ga vnesete. Če želite dostopati do podatkov, ki so podlaga za to (prva postavka, ki ste jo dali), jo boste obravnavali kot čakalno vrsto. Če želite to narediti, morate izvesti drugo kopico.
Navodila
Implementacija čakalne vrste z dvema nizoma je preprosta (Ablestock.com/AbleStock.com/Getty Images)-
V urejevalniku besedil napišite kodo za izvedbo skladov v skladu s postopki in funkcijami, ki so na voljo v programskem jeziku, ki ga želite uporabiti. Pokličite ta sklad Stack_Entry. Vnesite podatke v Stack_Entry (veliko programskih jezikov uporablja ukaz "push" za dodajanje podatkov). Na primer, zaženite ukaz "push" v Stack_Entry, da vnesete podatke v naslednjem vrstnem redu: "A", "B" in "C". "A" je prvi, ki vstopi in je na dnu sklada. Če želite dostopati do tega prvega elementa, podatke obravnavate kot čakalno vrsto.
-
Napišite kodo za izvedbo drugega sklada glede na postopke in funkcije, ki so na voljo v programskem jeziku, ki ga želite uporabiti. Pokličite ga StackSafe (mnogi programski jeziki uporabljajo ukaz "pop" za odstranitev podatkov iz sklada).
-
Odstranite vse elemente iz sklada Stack_Insert in jih postavite v Sleep Stack. Na splošno odstranite postavko Stack_Input in jo postavite v StackAid. Potem preverite, ali je vhod Stack_Input prazen. Če ni prazen, odstranite naslednji element iz vhoda Stack_In in ga postavite v stanje mirovanja. Ponavljajte, dokler je vhod Stack_Input prazen. V našem primeru odstranite "C" iz Stack_Input in ga postavite v Stack_Aid. Prepričajte se, da je InputPilot prazen. Odstranite "B" iz vhoda Stack_Input in ga nastavite na Stack_Aid. Prepričajte se, da je InputPilot prazen. Odstranite "A" iz vhoda Stack_Input in ga nastavite na Stack_Aid. Prepričajte se, da je InputPilot prazen.
-
Ko je sklad Stack_Path prazen, je postavka, ki je bila v vhodu Stack_Input ("A" v našem primeru) zdaj na vrhu Stack_Aside. Odstranite element SleepSeat in svoj stack ste spremenili v čakalno vrsto. Prvi element v skladu je zdaj prvi element, ki ga je treba odstraniti (prvi v, prvi izhod ali FIFO v prvi v, prvi ven).
Dva niza sta enaka vrstici
Kako
- Večina programskih jezikov ponuja funkcije za obdelavo podatkov v vektorju, kot če bi bila vrsta ali sklad. To pomeni, da lahko dostopate do zadnjega in prvega položaja vektorja, ne glede na to, s katerega konca vnesete podatke. Če so vaši podatki v vektorju, vam ni treba skrbeti za dostop do njih kot čakalne vrste ali stack. Toda če so vaši podatki v dinamičnem kupu in ga želite obravnavati kot čakalno vrsto, potem izvedite drugi sklad.
Kaj potrebujete
- Urejevalnik besedila
- Prevajalnik ali tolmač za programski jezik