Datateknik GR (B), Datastrukturer och algoritmer, 7,5 hp

1 (3)
Kursplan för:
Datateknik GR (B), Datastrukturer och algoritmer, 7,5 hp
Computer Engineering BA (B), Data Structures and Algorithms, 7.5 credits
Allmänna data om kursen
Kurskod
DT046G
Ämne/huvudområde
Datateknik
Nivå
Grundnivå
Progression
(B)
Inriktning (namn)
Datastrukturer och algoritmer
Högskolepoäng
7.5
Fördjupning vs. Examen
G1F , Kursen ligger på grundnivå och fordrar mindre än
60 hp kurs(er) på grundnivå som förkunskapskrav.
Utbildningsområde
Teknik
Ansvarig avdelning
Avdelningen för informations- och
kommunikationssystem
Inrättad
2007-03-15
Fastställd
2007-12-07
Senast reviderad
2013-07-11
Giltig fr.o.m
2013-08-15
100%
Syfte
Kursen presenterar, både teoretiskt och praktiskt, ett urval av algoritmer och
datastrukturer lämpade för vanligt förekommande problem hos
programvarutillämpningar, samt metoder för att undersöka egenskaperna hos
detta urval. Kursen syftar till att bilda ett kritiskt förhållningssätt till samspelet
mellan programkod, representation och lösningsförfaranden.
2 (3)
Lärandemål
Efter godkänd kurs ska du
- kunna analysera enkla algoritmer, uppskatta deras komplexitet och tillämpa
detta i din egen programmering,
- veta vilka faktorer att utvärdera för att välja vilken algoritm och datastruktur som
lämpar sig bäst för ett givet problem,
- kunna testa och jämföra egenskaper hos obekanta algoritmer genom att laborativt
mäta realtidsprestanda och räkna instruktioner, och
- ta hänsyn till komplexitetsfrågor när du konstruerar egna algoritmer
Innehåll
- Introduktion till algoritmer exemplifierat med graf-relaterade problem.
- Analys av algoritmers effektivitet.
- Enkla och komplexa datastrukturer: fält, länkade listor, dynamiska strukturer, kö,
stack, sammansatta strukturer; uppbyggnad av abstrakta datatyper (ADT).
- Rekursiva algoritmer och ”divide-and-conquer”-ansatser.
- Introduktion till dynamisk programmering.
- Träd, grafer och traverseringsalgoritmer
- Elementära sorteringsalgoritmer.
- Quicksort, mergesort, heapsort, m fl.
- Sökning och symboltabeller, binära träd och dess balansering
- Hashtabeller, sökning och algoritmer
Behörighet
Datateknik GR (A), 22,5 hp, inkluderande Objektbaserad programmering i C++ 7,5
hp, Matematik GR (A), Analys 7,5 hp
Rekommenderas:
Matematik GR (A), Diskret Matematik, 7,5 hp, Matematik GR (A), Algebra, 7,5 hp.
Urvalsregler
Urval sker i enlighet med Högskoleförordningen och den lokala
antagningsordningen.
Undervisning
Undervisningen består av ca: 34 timmar (17%) föreläsningar, 12 timmar (6%)
laborationer, 154 timmar (77%) självstudier. Självstudier skall ägnas åt inläsning av
litteratur, föreberelser för laboration, inlämningsuppgift och
tentamensförberedelser. Vid förändrad resurstillgång kan fördelningen ändras.
3 (3)
Examination
3.0 hp, L102: Laborationer
Betyg: Underkänd (F) eller Godkänd (P)
4.5 hp, T101: Skriftlig tentamen
Betyg: A, B, C, D, E, Fx och F. A-E är Godkänt, Fx och F är Underkänt.
Betygskriterier för ämnet finns på www.miun.se/betygskriterier.
Betygsskala
På kursen ges något av betygen A, B, C, D, E, Fx och F. A - E är Godkänt, Fx och F
är underkänt.
Litteratur
Obligatorisk litteratur
Sedgewick, Algorithms in C++, Addison-Wesley, (Ny upplaga, om möjligt), 0-20151059-6
Kommentar: alternativt: M. Goodrich and R. Tamassia Data Structures and
Algorithms in Java, Second edition Wiley, ISBN: 0-471-38367-8
Övrig information
Kursen är språkoberoende så tillvida att du får välja programspråk på
laborationer. Handledning kan dock endast garanteras i C++.
Denna kurs kan inte ingå i samma examen som kurs med kod DTAB04, DTAB50
eller DT064G.