Datateknik GR (B), Datastrukturer och algoritmer, 7,5 hp
Observera att litteraturen i kursplanen kan ändras/revideras fram till:
• 1 juni för en kurs som startar på höstterminen
• 15 november för en kurs som startar på vårterminen
• 1 april för en kurs som startar på sommaren
Skriv ut eller spara kursplanen som PDF
Du kan enkelt skriva ut en kursplan direkt från webbsidan. Använd kortkommandot ctrl+p (Windows) eller command+p (Mac). I nästa steg väljer du om du vill skriva ut eller spara kursplanen som PDF.
För en nedlagd kurs kan eventuell information om avvecklingsperiod hittas under rubriken "Övergångsregel" i senaste versionen av kursplanen.
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)
- 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 100%
- Ansvarig fakultet: Fakulteten för naturvetenskap, teknik och medier
- Ansvarig institution: Informationssystem och -teknologi
- Fastställd: 2007-12-07
- Senast ändrad: 2020-12-01
- Giltig fr.o.m: 2020-01-01
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.
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 17% föreläsningar, 6% laborationer, 77% självstudier. Självstudier skall ägnas åt inläsning av litteratur, förberedelser för laboration, inlämningsuppgift och tentamensförberedelser. Vid förändrad resurstillgång kan fördelningen ändras.
Examination
L102: Laborationer, 3 hp
Betygsskala: Underkänd (U) eller Godkänd (G)
T101: Skriftlig tentamen, 4,5 hp
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.
Betygskriterier för ämnet finns på www.miun.se/betygskriterier.
Om en student har ett beslut från samordnaren vid Mittuniversitetet om pedagogiskt stöd vid funktionsnedsättning, har examinator rätt att ge anpassad examination för studenten.
Om tentamen på campus inte får genomföras enligt beslut från rektor, eller den denne delegerat rätten till, gäller följande: Skriftlig tentamen T101, kommer att ersättas med två delar, webbexamination och uppföljning. Inom tre veckor efter webbexaminationen kommer ett urval av studenterna att kontaktas och få svara på frågor angående genomfört prov. Uppföljningen består av frågor om genomförandet av webbexaminationen och de svar som studenten skickat in.
Begränsning av examination
Studenter registrerade på denna version av kursplan har rätt att examineras 3 gånger inom loppet av 1 år enligt angivna examinationsformer. Därefter gäller examinationsform enligt senast gällande version av kursplan.
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.
Ö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.
Litteratur
Obligatorisk litteratur
- Författare/red: Sedgewick
- Titel: Algorithms in C++
- Upplaga: (Ny upplaga, om möjligt)
- Förlag: Addison-Wesley
- Kommentar: alternativt: M. Goodrich and R. Tamassia Data Structures and Algorithms in Java, Second edition Wiley, ISBN: 0-471-38367-8