Kursplan för Algoritmer och datastrukturer II
Algorithms and Data Structures II
- 5 högskolepoäng
- Kurskod: 1DL231
- Utbildningsnivå: Grundnivå
-
Huvudområde(n) och successiv fördjupning:
Datavetenskap G2F
Förklaring av koder
Koden visar kursens utbildningsnivå och fördjupning i förhållande till andra kurser inom huvudområdet och examensfordringarna för generella examina:
Grundnivå
- G1N: har endast gymnasiala förkunskapskrav
- G1F: har mindre än 60 hp kurs/er på grundnivå som förkunskapskrav
- G1E: innehåller särskilt utformat examensarbete för högskoleexamen
- G2F: har minst 60 hp kurs/er på grundnivå som förkunskapskrav
- G2E: har minst 60 hp kurs/er på grundnivå som förkunskapskrav, innehåller examensarbete för kandidatexamen
- GXX: kursens fördjupning kan inte klassificeras
Avancerad nivå
- A1N: har endast kurs/er på grundnivå som förkunskapskrav
- A1F: har kurs/er på avancerad nivå som förkunskapskrav
- A1E: innehåller examensarbete för magisterexamen
- A2E: innehåller examensarbete för masterexamen
- AXX: kursens fördjupning kan inte klassificeras
- Betygsskala: Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
- Inrättad: 2012-03-08
- Inrättad av: Teknisk-naturvetenskapliga fakultetsnämnden
- Reviderad: 2022-10-24
- Reviderad av: Teknisk-naturvetenskapliga fakultetsnämnden
- Gäller från: HT 2023
-
Behörighet:
60 hp varav 15 p matematik och 25 hp datavetenskap. Alternativ 45 hp in om Masterprogram i språkteknologi. Genomgången Programkonstruktion och datastrukturer varav 9 hp ska vara avklarade, alternativt genomgången Algoritmer och datastrukturer I. Engelska 6 (med en svensk kandidatexamen uppfylls kravet på engelska).
- Ansvarig institution: Institutionen för informationsteknologi
Mål
Efter godkänd kurs ska studenten kunna
- använda notationen för asymptotisk tillväxt av funktioner för att beskriva komplexitet hos algoritmer och beräkningsproblem.
- härleda ekvationer för en algoritms komplexitet och lösa dessa.
- använda vanliga algoritmiska tekniker som dynamisk programmering, "giriga" algoritmer, etc.
- lösa enkla problem genom grafalgoritmer, strängmatchning och flödesnätverk.
- definiera komplexitetsklasserna P och NP och diskutera den öppna frågan om P=NP.
- presentera och diskutera material relaterat till kursens innehåll muntligt och skriftligt med för utbildningsnivån lämplig färdighet.
Innehåll
Funktioners tillväxt, rekursiva algoritmers komplexitet. Datastrukturer för disjunkta mängder. Dynamisk programmering, "giriga" algoritmer, grafalgoritmer, t.ex. kortaste vägen och minimalt uppspännande träd. Maximalt-flödesproblem i flödesnätverk. Algoritmer för strängmatchning. Teori för svårlösta problem.
Undervisning
Föreläsningar, lektioner och övningar.
Examination
Skriftligt prov (3 hp) samt inlämningsuppgifter (2 hp).
Om särskilda skäl finns får examinator göra undantag från det angivna examinationssättet och medge att en enskild student examineras på annat sätt. Särskilda skäl kan t.ex. vara besked om särskilt pedagogiskt stöd från universitetets samordnare för studenter med funktionsnedsättning.
Versioner av kursplanen
Litteratur
Uppgift om kurslitteratur saknas. Ta kontakt med ansvarig institution för mer information.