Tietorakenteet ja algoritmit (5 op)
Toteutuksen tunnus: TX00DS64-3001
Toteutuksen perustiedot
- Ilmoittautumisaika
- 02.12.2019 - 13.03.2020
- Ilmoittautuminen toteutukselle on päättynyt.
- Ajoitus
- 16.03.2020 - 10.05.2020
- Toteutus on päättynyt.
- Opintopistemäärä
- 5 op
- Toteutustapa
- Lähiopetus
- Toimipiste
- Myllypurontie 1
- Opetuskielet
- suomi
- Paikat
- 0 - 42
- Koulutus
- Tieto- ja viestintätekniikan tutkinto-ohjelma
- Opettajat
- Juha Kämäri
- Opintojakso
- TX00DS64
Tavoitteet
Opiskelija tuntee yleisimmät tietorakenteet ja joitakin tietojenkäsittelyssä käytettäviä keskeisiä algoritmeja. Opiskelijalla on käytännön tuntuma algoritmien suunnitteluun ja laskennalliseen vaativuuteen. Lisäksi opiskelija tuntee Java-ympäristön Collections API -moduulin, joka sisältää joukon valmiita tietorakenne- ja algoritmitoteutuksia.
Sisältö
- abstrakti tietotyyppi
- tietorakenteet: lineaarinen lista, pino, jono, puut, prioriteettijono, joukko (hajautus), verkot.
- rekursio
- tietorakenteiden ja algoritmien toteuttaminen
- etsintäongelma, järjestämisongelma
- algoritmien laskennallinen vaativuus
- Java Collections API: säiliöt ja iteraattorit
Esitietovaatimukset
Oliosovellukset ja tietokannat
Arviointiasteikko
0-5
Arviointikriteerit arvosanalle 1 tyydyttävä
Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.
Arviointikriteerit arvosanalle 3 hyvä
Opiskelija tuntee tietorakenteiden toteutusperiaatteita, osaa perustellen valita tarkoitukseen sopivan tietorakenteen ja osaa kirjoittaa tietorakenteita käsittelviä algoritmeja.
Arviointikriteerit arvosanalle 5 kiitettävä
Opiskelija ymmärtää tietorakenteiden ja niitä käsittelevien algoritmien laskennallisuuden problematiikan ja pystyy analysoimaan algoritmien laskennallista vaativuutta.
Arviointikriteerit arvosanalle hyväksytty
Opiskelija ymmärtää abstraktioiden merkityksen ohjelmoinnissa ja osaa käyttää olemassa olevia valmiita API-kirjastojen tarjoamia tietorakenteita ohjelmistotyössä.