Sidans innehåll
Algoritmer
Kurs
DIT093
Avancerad nivå
7,5 högskolepoäng (hp)
Om utbildningen
Kursen ger kunskaper om:
- Vad är en effektiv algoritm?
- Verktyg för analys av algoritmer. O-notation. Analysera loopar och rekursiva anrop. Lösa rekursionekvationer.
- Datastrukturer och algoritmer. Granskning av grundläggande datastrukturer.
- Kombinera datastrukturer. Merge-and-find.
- Grafalgoritmer.
- Giriga algoritmer.
- Divide-and-conquer.
- Dynamisk programmering.
- Backtracking och Implicita sökträd. Branch-and-bound.
- Kort introduktion till lokala sök-och approximationsalgoritmer.
- Grundläggande komplexitetsteori. Komplexitetsklasserna P, NP och NPC, reduktioner. Exempel på NP-fullständiga problem. Att hantera svåra problem.
- Kort introduktion till andra designtekniker: lokal sökning, approximationsalgoritmer, randomiserade algoritmer, förbehandling, nätverksflöde.
Behörigheter och urval
Behörighet
Förkunskapskravet är avklarade kurser om 120 hp i ämnet datavetenskap eller
matematik, inklusive;
7,5 hp diskret matematik (DIT984 Diskret matematik för datavetare, ellerdelkursen Inledande algebra i MMG200 Matematik I eller mosvarande),
ytterligare 10 hp matematik,
7,5 hp imperativ eller objektorienterad programmering (DIT013 Imperativprogrammering med grundläggande objektorientering, eller motsvarande),
ytterligare 7,5 hp programmering,
7,5 hp datastrukturer (DIT962 Datastrukturer, DIT375 Python for Data Scientistseller motsvarande).
Följande kunskapsnivå i Engelska krävs; Engelska 6/Engelska B eller motsvarande frånett erkänt internationellt test, t.ex. TOELF, IELTS.
Urval
Högskolepoäng, max 285 hp.