OSAAMISTAVOITTEET
Kurssin suoritettuasi osaat määritellä, vertailla ja toteuttaa perustietorakenteita ja algoritmeja.
Ymmärrät esimerkiksi kuinka yleisimmät järjestämisalgoritmit, kuten lisäysjärjestäminen, lomitusjärjestäminen ja pikajärjestäminen toimivat, ja olet tutustunut "hajota ja hallitse"-suunnittelutekniikan käyttöön. Olet tutustunut puutietorakenteisiin ja niitä käyttäviin algoritmeihin. Ymmärrät, kuinka joukko- ja hakurakenteita voidaan toteuttaa puurakenteiden ja hajautustaulujen avulla, ja osaat vertailla näiden ominaisuuksia.
Tunnet dynaamisen ohjelmoinnin toimintaperiaatteen ja osaat soveltaa sitä joihinkin ongelmiin. Ymmärrät kuinka keskeiset verkkojen läpikäyntialgoritmit, kuten syvyys- ja leveyshaku, sekä lyhimmän polun etsintäalgoritmit toimivat. Tiedät, että on olemassa laskennallisesti vaativampia ongelmia ja osaat nimetä joitakin.
Olet toteuttanut monia yllä mainituista tietorakenteista ja algoritmeista, tai niiden muunnoksia, itsenäisesti. Hallitset alan perusterminologian ja osaat täten itsenäisesti hakea tietoa muista tietorakenteista ja algoritmeista. Hallitset algoritmianalyysin perusteita ja osaat esimerkiksi päätellä pahimman tapauksen ajoajan yksinkertaille algoritmeille.
Laajuus: 5
Aikataulu: 02.09.2024 - 02.12.2024
Vastuuopettaja (voimassa koko opetussuunnitelmakauden):
Vastuuopettaja (koskee tätä kurssikertaa): Lukas Ahrenberg, Tommi Junttila
Kurssin yhteystiedot (koskee tätä kurssikertaa):
Kurssin CEFR-taso (voimassa koko opetussuunnitelmakauden):
Opetuskieli ja suorituskielet (koskee tätä kurssikertaa):
Teaching language: Finnish. Languages of study attainment: Finnish, English
SISÄLTÖ, ARVIOINTI JA KUORMITTAVUUS
Sisältö
voimassa koko opetussuunnitelmakauden:
Algoritmianalyysin perusteita ja perustietorakenteita.
Järjestämisalgoritmeja ja "hajota ja hallitse"-suunnitteluperiaate.
Puutietorakenteita ja -algoritmeja. Puihin perustuvia hakutietorakenteita.
Hajautusfunktiot ja -taulut.
Dynaaminen ohjelmointi.
Verkkotietorakenteita ja -algoritmeja.
Rinnakkaislaskennan perusteita.
Laskennallisesti vaativampia ongelmia.
Toteutus, työmuodot ja arvosteluperusteet
voimassa koko opetussuunnitelmakauden:
Harjoitustehtäviä ja tentti.
Työmäärä toteutustavoittain
voimassa koko opetussuunnitelmakauden:
Luennot, laskuharjoitukset, ja itsenäinen työskentely.
PERUSTIETOJA
Oppimateriaali
voimassa koko opetussuunnitelmakauden:
Ilmoitetaan kurssin MyCourses-sivulla.
Korvaavuudet
voimassa koko opetussuunnitelmakauden:
Esitiedot
voimassa koko opetussuunnitelmakauden:
LISÄTIETOJA
Lisätietoja
voimassa koko opetussuunnitelmakauden:
Opetuskieli: suomi
Opetusperiodi: 2024-2025 Syksy I - II
2025-2026 Syksy I - IIIlmoittautuminen:
The course overlaps with CS-A1143 Data Structures and Algorithms Y, and it is not possible to include both courses into the degree.