Siirry suoraan sisältöön

Tietorakenteet ja algoritmitLaajuus (5 op)

Tunnus: TI00AC30

Laajuus

5 op

Osaamistavoitteet

Opintojakson suoritettuaan opiskelija ymmärtää abstraktien tietorakenteiden toimintaperiaatteen. Opiskelija osaa toteuttaa abstraktia tietorakennetta käyttävän sovelluksen sekä valitsemaan ongelmaan sopivan säiliötyypin ja ohjelmoimaan sen.

Sisältö

- Abstraktio
- Yleisyys ja ohjelmistokomponentit ohjelmointityössä
- Abstraktit tietotyypit, pinot, jonot ja puurakenteet
- Iteraattorit ja säiliötyypit. Eri toteutusvaihtoehtojen kompleksisuus.
- Rekursio määrittelyissä, ongelman ratkaisussa ja ohjelmointitekniikkana

Esitietovaatimukset

Ohjelmoinnin perusteet
Ohjelmoinnin jatko

Arviointikriteerit, tyydyttävä (1)

Opiskelija ymmärtää abstraktion merkityksen ohjelmoinnissa sekä toimintojen että data osalta.
Opiskelija ymmärtää abstraktin tietotyypin käsitteen ja merkityksen ohjelmistojen laatimisessa. Opiskelija osaa käyttää annettuja abstrakteja tietotyyppejä. Opiskelija osaa laatia sovellukseen sopivia abstrakteja tietotyyppejä.

Arviointikriteerit, hyvä (3)

Opiskelija osaa hyödyntää tehokkaasti dynaamista muistia abstraktien tietotyyppien käytössä ja toteutuksessa. Opiskelija osaa hyödyntää pinoa ja jonoa erilaisten algoritmien laadinnassa. Opiskelija ymmärtää, että erilaisilla säiliöiden toteutustavoilla on hyvät ja huonot puolet ja hän osaa valita sopivan toteutustavan sovelluksen vaatimukset huomioiden.

Arviointikriteerit, kiitettävä (5)

Opiskelija ymmärtää pinon ja rekursion sukulaisuussuhteen ja osaa ratkaista melko monimutkaisiakin probleemoita pinon tai rekursion avulla. Opiskelija ymmärtää milloin rekursiivinen ratkaisu ja milloin iteratiivinen ratkaisu on tilanteeseen sopivampi. Opiskelija ymmärtää ohjelmien geneerisyyden tarpeen ja hyödyn ja ymmärtää eron source-kooditason ja binäärikooditason geneerisyydessä.