Kursplan

Algoritmer och mjukvarudesign

Kurskod
GMI24H
Poäng
7,5 högskolepoäng
Nivå
Grundnivå
Institution
Institutionen för information och teknik
Ämnestillhörighet
Mikrodataanalys (XYZ)
Ämnesgrupp
Övriga tvärvetenskapliga studier
Utbildningsområde
Naturvetenskapliga området, 100%
Kursen kan ingå i följande huvudområde(n)
Datateknik1
Mikrodataanalys2
Fördjupningsbeteckning för respektive huvudområde
1G1F
2G1F
Fastställd
Fastställd 2018-09-13.
Kursplanen gäller fr.o.m. 2018-11-27.

Lärandemål

Efter avslutad kurs ska den studerande kunna:

  • Använda olika typer av datastrukturer samt visa förståelse för deras för- och nackdelar
  • Designa en lämplig datastruktur för att lösa ett specifikt problem
  • Applicera olika typer av algoritmer till utsökning och sortering av information
  • Utvärdera prestation och effektivitet av lösningar (datastruktur tillsammans med en algoritm)
  • Bygga hybrida lösningar där flera olika datastruktur/algoritmer ingår

Innehåll

Olika typer av datastruktur introduceras, som dynamiska listar, matriser och träd. För- och nackdelar diskuteras med avseende till snabbhet, minnesresurser och komplexitet som grund för kvalificerade val av datastruktur för att lösa ett specifikt problem.

Olika typer av algoritmer diskuteras, båda övergripande och i detalj (implementeringsnivå). Teoretiska koncept som greedy algoritmer, dynamisk programmering och rekursion introduceras. En specifik case-study genomförs där sorteringsalgoritm används för att koppla ihop teori och praktik.

Algoritmers för- och nackdelar beskrivs. Huvudkriterier som minneskrav, exekveringstid och programmeringsresurser diskuteras. En grundläggande matematisk teknik för teoretisk analys jämförs med empiriska undersökningar i laborationer.

Slutligen diskuteras hur en hybrid lösning kan ge bästa prestation. Till exempel en sorteringsalgorithm där båda quicksort och bubblesort kombineras.

Examinationsformer

Laborationsuppgifter (4,5hp) och salstentamen (3hp)

Arbetsformer

Föreläsningar och laborationsarbete

Betyg

Som betygsskala används U–VG.

Labborationsuppgifter U-G

Salstentamen U-VG

Kursens slutbetyg bestäms av betyget för salstentamen.

Förkunskapskrav

  • Objektorienterad programmering, 7,5 hp, grundnivå

Övrigt

Max 5 examinationer.