Table of contents

The course is connected to the following study programs

Teaching language

English.

Learning outcomes

After completing the course, the student should:

  • Be familiar with standard sorting algorithms and their computational complexities.
  • Be able to recognize, apply, and implement standard algorithmic design techniques, including greedy algorithms, divide-and-conquer algorithms, dynamic programming, and backtracking.
  • Understand and be able to apply the fundamental principles of algorithm analysis.
  • Be familiar with classical algorithms for string searching, string comparison, and text compression.
  • Know basic graph algorithms for search and traversal, shortest paths, minimum spanning trees, and topological sorting.
  • Within the topic of Computability and Complexity, understand the fundamental principles and practical implications of NP-completeness theory, have encountered NP-completeness proofs for specific problems, understand the concepts of computability and undecidability, and be familiar with common examples of unsolvable problems.

Contents

Sorting and searching, greedy algorithms, divide-and-conquer algorithms, dynamic programming, and backtracking, graph algorithms

Teaching and learning methods

Lectures and exercises. Expected workload for the average student is approximately 200 hours.

Examinations

Portfolio with project assignments counts 60 % of the final grade. 3 hours written examination counts 40 % of the final grade. Information about the content of the portfolio will be given in Canvas at the start of the course. Graded assessment. There will not be arranged a postponed exam for the portfolio.

Student evaluation

The person responsible for the course decides, in cooperation with student representative, the form of student evaluation and whether the course is to have a midway or end of course evaluation in accordance with the quality system for education, chapter 4.1.

Offered as a free-standing course

Yes. Subject to availability or capacity.

Admission Requirement if given as a free-standing course

Same as for the master's programme in AI and IoT

Reduction of Credits

This course’s contents overlap with the following courses. A reduction of credits will occur if one of these courses is taken in addition:

Course Reduction of Credits
IKT301 – Applied Algorithms. 7.5
Last updated from FS (Felles studentsystem) Oct. 15, 2026 2:55:23 PM