Kolmantena pinon toteutusvaihtoehtona tarkastellaan toteutusta linkitetyn listan avulla.
Kukin pinoalkio sisältää tässä ratkaisussa varsinaisen datan lisäksi tiedon siitä, missä edellinen pinoalkio sijaitsee.
Tilanvaraukset pinoalkioille tehdään push()-rutiinissa ja muisti vapautetaan pop()-rutiinissa.
Pinoalkion ja pinon tyypit ovat tietueita (struct). C-koodin lisäksi push()- ja pop()-funktioiden keskeiset toiminnot kuvataan esimerkin lomassa graafisesti.
![]() | Tietorakenteet (ja muut määrittelyt) |
![]() | Pinon alustamien |
![]() | Onko pino tyhjä? |
![]() | Alkion vienti pinoon |
![]() | Alkion poistaminen pinosta |
![]() | Pinon tyhjentäminen |
![]() | Sovellus |