|
OHJ-2150 Algoritmien analyysi, 4 op
|
Henri Hansen, Antti Valmari
Luentoajat ja -paikat | Kohderyhmä, jolle suositellaan | |
Toteutus 1 |
|
Weekly exercises, examination.
Osasuoritusten pitää liittyä samaan toteutuskertaan
-
Kyky ymmärtää ja analysoida algoritmeja oikeellisuuden sekä ajan- ja muistinkulutuksen näkökulmasta, käsitys algoritmien todistamisesta oikeaksi, yleisimpien algoritmien hallinta.
Sisältöalue | Ydinaines | Täydentävä tietämys | Erityistietämys |
1. | Tavallisimpien silmukkarakenteiden oikeellisuuden toteaminen, pääasiassa yksinkertaisimmat invarianttitodistukset. | Tilapropositioiden käyttö laajemmin, invarianttitekniikan kehittynyt käyttö. | Hyvin vaikeat algoritmien todistukset. |
2. | Tavallisimpien yksinkertaisten silmukkarakenteiden ajankäytön analyysi, häntärekursion poisto, yksinkertaisten rekursiivisten algoritmien analysointi. Peruskäsitys tasatusta suoritusjasta. | Master-menetelmä, tasatun ajan analyysi, monimutkaisempien silmukoiden analyysi. | Laskentatehtävien kompleksisuus, eräiden tehtävien NP-kovuuden tunnistaminen. |
3. | Perustavanlaatuisten algoritmien (mm. järjestämisalgoritmit, DFS, BFS) olennaiset ominaisuudet ja niiden sovelluskohteet. Käytettävän tietorakenteen vaikutukset algoritmien käyttäytymiseen. | Hieman kehittyneempiä algoritmeja. Korkean tason toteutustekniset seikat, jotka olennaisesti vaikuttavat algoritmien toimintaan: hieman vaativampi tietorakenteiden valinta. | Vaikeita algoritmeja todistuksineen, algoritmien soveltamista vaikeiden ongelmien ratkaisemiseen. |
Painoarvo on tenttiosaamisessa: Kyky saada oikea vastaus selkeällä analyysilla tärkein kriteeri. Perusalgoritmien ominaisuuksisen hallinta laskevassa järjestyksessä: Analyyttinen, algoritmin suorituksen mekaaninen hallinta, ulkoaopittu.
Opintojaksolla käytetään numeerista arviointiasteikkoa (1-5)
Tyyppi | Nimi | Tekijä | ISBN | URL | Painos,saatavuus... | Tenttimateriaali | Kieli |
Kirja | Introduction to Algorithms, 2nd edition | Cormen, Leiserson, Rivest, Stein | 0-262-53196-8 | Suomi | |||
Luentokalvot | Algoritmien Analyysi | Henri Hansen | Julkaistaan kurssin verkkosivulla. | Suomi |
Opintojakso | P/S |
OHJ-2010 Tietorakenteiden käyttö | Pakollinen |
OHJ-2100 Ohjelmistotieteen perustyökaluja | Pakollinen |
Opintojakso | Vastaa opintojaksoa | Selite |
|
|
Kuvaus | Opetusmuodot | Toteutustapa | |
Toteutus 1 |
Lähiopetus: 0 % Etäopetus: 0 % Itseopiskelu: 0 % |