DA339A Objektorienterad programmering alternativt DA361A Data- och informationsvetenskap: Objektorienterad programmering och modellering för IA eller DA371A Informatik: Systemutveckling
DA211A Introduktion till studier i datavetenskap alternativt DA154A Introduktion till datavetenskap eller
DA215A Datateknik eller DA372A Informatik: Verksamhetsstödjande system
Utöver ovanstående formella förkunskapskrav förutsätts även att studenten har kunskaper från kursen MA220A Diskret matematik för programmerare.
Kursen ingår i kandidatexamen i Datavetenskap med inriktning mot systemutveckling på 31-60 poängsnivån.
Kursen syftar till att studenten utvecklar en fördjupad programmeringserfarenhet. I kursen studerar studenten analys, design och implementation av praktiska och effektiva algoritmer och datastrukturer, vilket syftar till att utveckla en förmåga att lösa problem som ofta uppkommer i en programmerares vardag.
Kursen innefattar följande:
- algoritmanalys och algoritmkonstruktion: rimlighetsbedömningar, giriga algoritmer, söndra-och-härska-algoritmer, amorterad analys och heuristiska metoder
- algoritmer: sökalgoritmer, sorteringsalgoritmer och grafalgoritmer
- grundläggande och avancerade datastrukturer såsom binära sökträd, hashtabeller,prioritetsköer och grafer
Kunskap och förståelse
Efter genomförd kurs ska studenten:
- visa fördjupad förståelse för egenskaper hos strukturerade och objektorienterade datorprogram
- ha förmåga att beskriva samt uppvisa en fördjupad förståelse av grundläggande och avancerade praktiska algoritmer inom områden såsom grafteori, geometri, strängmatchning och talteori
- ha förmåga att beskriva samt uppvisa en fördjupad förståelse av grundläggande och avancerade datastrukturer
Färdighet och förmåga
Efter genomförd kurs ska studenten:
- kunna använda och självständigt anpassa grundläggande och avancerade praktiska algoritmer och datastrukturer för att lösa samt implementera givna problem korrekt och effektivt
- arbeta effektivt i grupp och självständigt för att lösa givna problem korrekt och effektivt inom givna tidsramar
Värderingsförmåga och förhållningssätt
Efter genomförd kurs ska studenten:
- utifrån en given problemställning självständigt och i grupp kunna analyser problemet samt kritiskt välja lämpligt angreppssätt, algoritm och/eller datastruktur
- kunna utföra en korrekt implementation och kunna resonera kring och kritiskt värdera design- och implementationsval ur olika aspekter såsom prestanda
I kursen ges undervisning genom föreläsningar, laborationer, seminarier och handledning.
Krav för godkänd: Godkänd skriftlig tentamen (4,5 hp) och godkända inlämningsuppgifter (3 hp).
Krav för väl godkänd: Väl godkänd skriftlig tentamen och godkända inlämningsuppgifter.
Högskolan ger studenter som deltar i eller har avslutat en kurs en möjlighet att framföra sina erfarenheter av och synpunkter på kursen genom en kursvärdering som anordnas av högskolan. Högskolan sammanställer kursvärderingarna samt informerar om resultaten och eventuella beslut om åtgärder som föranleds av kursvärderingarna. Resultaten ska hållas tillgängliga för studenterna. (HF 1:14).
Om en kurs upphört att ges eller genomgått större förändringar ska studenterna, under ett år efter det att förändringen skett, erbjudas två tillfällen för omprov baserade på den kursplan som gällde vid registreringen.