ETE389 · 3 credits · Advanced level (A1N) · Datavetenskap
Algorithmic Problem Solving: Graphs and Flows
Active · next start HT 2026
100%
passed the latest regular sitting
LAB1 · 2 Sep 2026 · 7 students
100%
passed the regular sittings, all sittings over the last 5 years
LAB1 · 35 students
This module only reports passing results, so the pass rate does not show how many did not pass.
Hand-in or lab
LAB1 Laboratory work
- 5
- 4
- 3
Main rounds
100% passed · 35 students
- 100%7
- 100%13
- 100%7
- 100%8
Later rounds
100% passed · 18 students
- 100%11
- 100%7
- Pass a later round: 100% (18 students), compared with 100% (35 students) on the ordinary exam
- Get 4 or 5: 38% (53 students)
Show small sittings (27)
Sittings with fewer than 5 students, often credit transfers or special sittings. They are not part of any figure on this page.
- 100%2
- 100%1
- 100%1
- 100%1
- 100%1
- 100%1
- 100%1
- 100%2
- 100%1
- 100%1
- 100%1
- 100%2
- 100%2
- 100%3
- 100%1
- 100%1
- 100%1
- 100%2
- 100%1
- 100%1
- 100%1
- 100%1
- 100%1
- 100%1
- 100%1
- 100%1
- 100%2
About the course
Aim
The goal of the course is to develop the ability to solve algorithmic problems by utilizing knowledge of algorithms, data structures and complexity theory with a focus on graphs and flows. To solve this type of problem, it is important to be able to analyze the problem, choose or design an algorithm, determine how much resources (time and memory) the algorithm requires and to implement and test the algorithm quickly and correctly.
Intended learning outcomes:
- Knowledge of common algorithms and data structures related to graphs and flows.
- The ability of implementing algorithms and data structures related to graphs and flows.
- The ability of solving algorithmic problems related to graphs and flows.
- The ability of analysing the efficiency of different approaches to solving a problem, with a focus on graphs and flows, to determine which approaches will be efficient enough in a given situation.
Content
Successful problem solving in computer science requires a solid theoretical foundation as well as ability to apply the theory to practical problem solving. The aim of this course is to develop your ability to solve complex algorithmic problems by applying knowledge of algorithms, data structures, and complexity theory. As a professional software developer, it is essential to being able to analyse a problem, chose or design an algorithm, judge the efficiency of a proposed algorithm, and to implement and test it quickly and correctly. In this course you will practice this by solving well defined algorithmic problems with a focus on graphs and flows.
The purpose is that the students should be able to use programming and algorithms, with a focus on graphs and flows, as an effective tool for problem solving, and should get opportunity to apply theoretical knowledge from other courses to solve practical problems.
The course gives practical and theoretical knowledge about important data structures and algorithms related to graphs and flows such as shortest path, minimum spanning tree, max flow, and min cost max flow.
- Examiner
- Fredrik Heintz
- Scheduled hours
- 0 h
- Main field of study
- Datavetenskap