Algorithm Theory (DAT600)
This course is about algorithm theory and complexity theory, which includes the following topics: Graphs and graph algorithms, greedy algorithms, dynamic programming, linear programming, and NP-completeness.
Course description for study year 2024-2025. Please note that changes may occur.
Course code
DAT600
Version
1
Credits (ECTS)
10
Semester tution start
Spring
Number of semesters
1
Exam semester
Spring
Language of instruction
English
Content
Introduction to algorithm theory and complexity theory; Sorting and order statistics, datastructures , advanced design and analysis techniques, graphs and graph algorithms, multithreaded algorithms, NP-completeness.
Learning outcome
After completing this course the student should be able to:
Understand what algorithms and datastructures mean for developing lage and complex information systems
Create efficient algorithms, in terms of time, and resource like memory
Choose and apply different types of algorithms depending on what the information systems demand
Choose the optimal algorithms among many competing ones
Required prerequisite knowledge
Recommended prerequisites
Exam
Form of assessment | Weight | Duration | Marks | Aid |
---|---|---|---|---|
Written exam | 1/1 | 4 Hours | Letter grades | No printed or written materials are allowed. Approved basic calculator allowed |
Written exam with pen and paper.
Coursework requirements
4 compulsory assignments.
Course teacher(s)
Course coordinator:
Nejm SaadallahHead of Department:
Tom RyenMethod of work
4 hours lectures and 2 hours exercises.
Overlapping courses
Course | Reduction (SP) |
---|---|
Algorithm Theory (MID290_1) | 10 |