Budgetår
Institution
IDAExaminator
Fredrik HeintzSchemablock
HelterminVT1: block 1
VT2: block 4
Huvudområden
DatateknikDatavetenskap
Nivå
A1XTidsfördelning
6,0HPSchemalagd tid: 48 timmar
Självstudietid: 112 timmar
Innehåll
För att framgångsrikt lösa datavetenskapliga problem krävs en solid teoretisk grund samt förmågan att applicera teorierna vid praktisk problemlösning. Målet med den här kursen är att utveckla förmågan att lösa komplicerade algoritmiska problem genom att utnyttja kunskaper om algoritmer, data strukturer och komplexitetsteori. För att lösa den här typen av problem är det viktigt att kunna analysera problemet, välja eller designa en algoritm, avgöra hur mycket resursers (tid och minne) algoritmen kräver samt att implementera och testa algoritmen snabbt och korrekt. I den här kursen tränas detta genom att lösa uppgifter och att arbeta under tidspress under problemlösningstillfällen. Kursen innehåller också tävlingsmoment där studenterna enskilt eller i grupp ska lösa algoritmiska problem under tidspress och med begränsade resurser.
Syftet är att studenterna ska kunna använda programmering och algoritmer som ett effektivt verktyg för problemlösning samt få en möjlighet att tillämpa teoretiska kunskaper från andra kurser för att lösa praktiska problem.
Mål
Studentens lärandemål:
- Att analysera effektiviteten hos olika möjliga lösningar på ett problem för att avgöra vilken som är tillräckligt effektivt för en given situation.
- Att jämföra olika problem med avseende på svårighetsgrad.
- Att använda teknik för algoritmdesign som giriga algoritmer, dynamisk programmering, söndra och härska samt sökning för att skapa algoritmer för att lösa givna problem.
- Strategier för att testa och debugga algoritmer och datastrukturer.
- Att snabbt och korrekt implementera algoritmer och datastrukturer.
- Att kommunicera och samarbeta med andra studenter vid problemlösning i grupp.
Examinationsmoment
UPG1 - 2,0 HPHemuppgifter (U, 3, 4, 5)
LAB1 - 4,0 HP
Laborationer (U, 3, 4, 5)
Organisation
Kursen består av seminarier och laborationer. Seminarierna används för att gå igenom hemuppgifter, algoritmer och algoritmisk problemlösning. Några av laborationerna är särskilda problemlösningssessioner där studenterna ska lösa så många problem som möjligt från en uppsättning problem.
Litteratur
Competitive Programming 3 Steven and Felix Halim. https://sites.google.com/site/stevenhalim/ Följande böcker kan vara av intresse: Introduction to Algorithms, Third Edition, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein Algorithmic Problem Solving, R. Backhouse, http://algorithmicproblemsolving.org/ How to Solve It, G. PolyaRelaterade profiler
Datadriven analys och maskinintelligens
DAMI - ISY |
Kommentarer
Logga in för att kunna läsa och skriva kommentarer. |