Wikijunior Ohjelmointi/Pino
Pino on hyvin tavallinen apuväline tietokoneohjelmissa. Se on tietorakenne, johon voi lisätä tietoja ja josta ottaa tietoja. Tietoja voi ottaa pinosta päinvastaisessa järjestyksessä kuin ne on lisätty. Ensin lisätty voidaan siis poistaa viimeisenä, ja viimeisenä lisätty ensimmäisenä. Pino on siis hyvin samankaltainen kuin esimerkiksi kirjapino. Kun kirjoja pinotaan pöydälle jää ensimmäiseksi lisätty alimmaiseksi. Kun haluaa ottaa alimmaisen kirjan pinosta, pitää ensin poistaa sen päällä olevat kirjat.
Pinon periaate tulee vastaan monenlaisissa tilanteissa. Esimerkksi tässä junan vaunut järjestetään käänteiseen järjestykseen sivuraiteen avulla.
Erityisen hyödyllinen pino on silloin kun sitä käytetään yhdessä toisten pinojen tai seuraavassa luvussa käsiteltävien jonojen kanssa.
Tehtäviä
muokkaa1. Tässä tehtävässä voi käyttää apuna esimerkiksi kolmea erikokoista kirjaa. Siirrä renkaat ensimmäisen kuvan asemasta jälkimmäisen kuvan asemaan. Pinoja on kolme A, B ja C. Voit ottaa yhden renkaan yhdestä pinosta ja asettaa sen toiseen pinoon. Suurempaa rengasta ei kuitenkaan saa asettaa pienemmän päälle.
2. Auta junailijaa järjestämään junanvaunut oikean yläkulman kuvan mukaiseksi käyttäen kahta sivuraidetta apuna. Voit käyttää apuna esimerkiksi erivärisiä kyniä tai lautapelin nappuloita.