Kako implementirati red pomoću dva hrpe

Autor: Laura McKinney
Datum Stvaranja: 4 Travanj 2021
Datum Ažuriranja: 19 Studeni 2024
Anonim
Implement two Stacks in an Array | Stack | Love Babbar DSA Sheet | Amazon🔥
Video: Implement two Stacks in an Array | Stack | Love Babbar DSA Sheet | Amazon🔥

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)

    Dvije gomile jednake su redu

  1. 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.

  2. 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).


  3. 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.

  4. 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).

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

Kako ukloniti mrlje s proteza

Tamara Smith

Studeni 2024

Kao i kod prirodnih zuba, i na lažnim zubima vremenom mogu natati mrlje. Kava, čaj, crno vino i pušenje odlučujući u čimbenici u boji zuba. Proteze u porozne i mogu aporbirati pigment tih tvari, što u...

Kako triangulirati mobitel

Tamara Smith

Studeni 2024

Kako triangulirati mobitel. tanična triangulacija prikuplja podatke i crta približno mjeto dotičnog mobitela. Budući da je za triangulaciju tanica potrebno locirati jačinu ignala tupova mobitela koji ...

Zanimljivo Na Mjestu