Postgraduate course

Course description

Objectives and Content

The course includes advanced methods for design and analysis of discrete algorithms, such as greedy algorithms, dynamic programming and various forms of graph traversal. The course also covers how to recognize that a problem is intractable, so-called NP-complete problems.

Learning Outcomes

On completion of the course the student should have the following learning outcomes defined in terms of knowledge, skills and general competence:


The student:

  • can apply the classical algorithm design techniques for discrete problems. These techniques include greedy algorithms, dynamic programming, graph traversal and network flow.
  • can recognize new problems that are amenable to the techniques learned in this course, and design new algorithms for similar problems.
  • can prove correctness of algorithms and analyze the running time of algorithms.
  • knows about the complexity classes P and NP, the terms NP-complete and NP-hard, and how these concepts can be used to show that a concrete problem is unlikely to be solvable in polynomial time.



ECTS Credits


Level of Study


Semester of Instruction

Required Previous Knowledge
For incoming exchange students: At least 60 ECTS in Computer Science and at least 10 ECTS in mathematics.
Recommended Previous Knowledge
INF102 and at least one out of MNF130 and MAT221
Credit Reduction due to Course Overlap
I234: 10 ECTS
Access to the Course
Access to the course requires admission to a programme of study at The Faculty of Mathematics and Natural Sciences
Teaching and learning methods
4 hours of lecture per week, and 2 hours of work in groups.
Compulsory Assignments and Attendance
Forms of Assessment

3 hour written exam. The exam may be digital (on a computer). See more information at

Up to 30% of the final grade may be based on course activities during the semester, such as in-class midterms or hand-in assignments. The students will be notified of these activities and their final weight in the grade at the beginning of the semester.


Grading Scale
The grading scale used is A to F. Grade A is the highest passing grade in the grading scale, grade F is a fail.
Assessment Semester
Examination both spring semester and autumn semester. In semesters without teaching the examination will be arranged at the beginning of the semester.
Reading List
The reading list will be available within July 1st for the autumn semester and December 1st for the spring semester
Course Evaluation
The course will be evaluated by the students in accordance with the quality assurance system at UiB and the department.
Examination Support Material
Programme Committee
The Programme Committee is responsible for the content, structure and quality of the study programme and courses.
Course Coordinator
Course coordinator and administrative contact person can be found on Mitt UiB, or contact Student adviser
Course Administrator
The Faculty of Mathematics and Natural Sciences represented by the Department of Informatics is the course administrator for the course and study programme.