Pino ja jono

Anonim

Sekä pino ja jono määritellään tietyssä järjestyksessä järjestettyjen kohteiden peräkkäisestä kokoelmasta tietorakenteeseen, joka perustuu joidenkin reaaliarvoisten ekvivalenttien perusteella. Molemmat ovat lineaarisia tietorakenteita, joita käytetään tietojen tallentamiseen ja hakuun tehokkaasti lukuun ottamatta toimintaperiaatetta. Pino on tilattu lista elementeistä, joissa kaikki lisäykset ja poistot tehdään samalla päällä, kun taas jono on päinvastoin pino, joka on avoin molemmissa päissä, jolloin toista päätä käytetään syöttämään dataa samalla kun toinen poistamaan tiedot. Näiden kahden tärkein ero on niiden työmekanismi.

Mikä on Stack?

Pino on lineaarinen tietorakenne, jota käytetään järjestämään dataa tietyllä tavalla siten, että sitä voidaan käyttää tehokkaasti. Koneet tarvitsevat suuntaa tehtävien suorittamiseksi, jotka ovat sekä yksinkertaisia ​​että monimutkaisia ​​komennoilla. Samoin tietoja voidaan jäsentää monin eri tavoin ja yksi tehokkaimmista tietorakenteista on pinot. Se on abstrakti tietorakenne, joka muistuttaa fyysistä pinota, jossa esineet on järjestetty tiettyyn järjestykseen, joka perustuu erityisesti viimeiseen ensimmäiseen ulos (LIFO) -mekanismiin, mikä tarkoittaa, että viimeinen lisätty kohde on ensin ja päinvastoin. Pino-datarakenteen yleisin sovellus on taaksepurkaus tai Syvyyden ensimmäinen etsintäalgoritmi.

Mikä on jono?

Jono on myös lineaarinen tietorakenne, jonkin verran samanlainen kuin pino-datarakenne, paitsi että se on avoin molemmissa päissä. Se on peräkkäinen kokoelma esineitä, jotka muistuttavat ihmisten jonoa. Pinoista poiketen se perustuu ensimmäiseen ensimmäiseen (FIFO) -periaatteeseen, joka tarkoittaa sitä, että aikaisinta lisättyä aihetta voidaan käyttää ensin ja päinvastoin. Jonossa yksi pää upotetaan kohteisiin ja toinen pää poistamaan kohteet. Kuten ihmisjoukko, uudet yhteisöt sijoitetaan taakse ja jo palvelleet yksiköt poistetaan edestä. Jonoon on sallittu kaksi toimintoa: enqueue ja dequeue. Enqueue tarkoittaa kohteen lisäämistä takaa ja poistaminen tarkoittaa, että kohteita poistetaan etupuolelta.

Pino ja jono eroavat toisistaan

Merkitys Stack ja Queue

Stack on perusdatarakenne, abstrakti datatyyppi, jota esittää lineaarinen rakenne, joka muistuttaa fyysistä pinoa, johon objekti voidaan lisätä milloin tahansa, mutta joka voidaan poistaa, joka lisätään viimeiseksi. Yksinkertaisesti sanottuna pino-datarakenteen esineiden lisääminen ja poistaminen tapahtuu yhdestä päästä, joka on pinon yläosa. Jono on jonkin verran samanlainen kuin pino, paitsi että se on avoin molemmissa päissä - toinen pää työntää objektin ja toisen poistamaan objektin, mikä tarkoittaa ensin tallennettavien objektien pääsyä ensin.

Pinoon ja jonoon liittyvä työskentelyperiaate

Sekä pino ja jonot ovat ei-primitiivisiä abstrakteja tietotyyppejä tietorakenteessa, joka toimii esineiden kokoelmana, jossa yksiköt tallennetaan tiettyyn järjestykseen. Pino on esineiden pakkaus, jossa yksiköt tallennetaan ja poistetaan viimeisen ensimmäisessä (LIFO) -periaateperiaatteen mukaisesti, joten objektit voidaan tallentaa ja hakea kerrallaan. Jono, toisaalta, on kokoelma esineitä, joissa yksiköt tallennetaan ja poistetaan ensimmäisen FIFO-periaatteen mukaisesti.

Pino- ja jonon rakenne

Nimipino viittaa rakenteeseen, jossa kohteet sijoitetaan päällekkäin, kuten pino, kuten keksien paketti. Yhtä päätä käytetään sijoittamaan ja poistamaan pinoista tehtäviä esineitä, mikä helpottaa kohteen valitsemista ylhäältä, samalla kun vaikeuttaa samalla pääsyä viimeiseen kohteeseen, joka vaatii poistamalla useita kohteita erikseen ylhäältä alaspäin. Jono on pinon vastakohta, mikä tarkoittaa, että uudet esineet sijoitetaan taakse ja poistetaan edestä aivan kuten kirjan.

toiminnot

Pinoihin voidaan tehdä kaksi perustoimintoa: työntö, joka lisää kohteen päätyyn ja jos pino on täynnä, se on Overflow ehto ja pop, jotka poistavat viimeisimmän kohteen pinoista ja tyhjistä pinosta, viittaa Underflow-ehtoon. Pinoihin liittyy ylimääräinen kurkistustoiminto, jonka avulla voit päästä kohteen yläosaan muuttamatta pinoa.Jonoon liittyy kaksi perusperiaatetta: enqueue, mikä tarkoittaa lisättävien esineiden lisäämistä taakse ja dequeue, joka viittaa esineiden poistamiseen edestä.

Pino- ja jono-sovellukset

Yksi pino-datarakenteen ensiöalkuperäisista sovelluksista on Syvyyden ensimmäinen etsintäalgoritmi, joka perustuu ajatukseen paluukanavasta, jota käytetään pääasiassa kaavion tai puhedatarakenteen hakuun. Sitä voidaan käyttää myös kääntäjä / käyttöjärjestelmässä funktion puheluiden käsittelyyn tai rekursiivisten toimintojen toteuttamiseen. Jono-tietorakenteen yleisin sovellus on CPU-aikataulutus tai levyn aikataulutus tai operaatiotutkimus. Jono-tietorakenteen todellinen elämä esimerkki on ihmisten jono, jossa ensimmäistä riviä seisova henkilö on palvellut ensin.

Stack vs. Queue: vertailu kaavio

Yhteenveto Stack vs. Queue

Sekä pino ja jonot ovat ei-primitiivisiä abstrakteja tietorakenteita, jotka on määritelty tietokoneen tietyssä järjestyksessä järjestettyjen esineiden kokoelmana, mutta erilaisilla toimintaperiaatteilla. Vaikka molemmat liittyvät tietojen organisointiin ja tallentamiseen, ne toimivat hyvin toisin. Stack on perustiedot, joka perustuu LIFO: n periaatteeseen, jota kutsutaan myös viimeiseksi ensimmäiseksi, eli viimeksi lisättävää aihetta on ensin tarkasteltava tai FILO tarkoittaa sitä, että ensimmäinen kohde on viimeisenä. Päinvastoin, jono perustuu FIFI (first in first-out) -periaatteeseen, joka tarkoittaa sitä, että aikaisinta kohdetta on ensin tarkasteltava.