Students
Tuition Fee
Not Available
Start Date
2027-01-13
Medium of studying
Not Available
Duration
7.5 credits
Details
Program Details
Degree
Masters
Major
Computer Science | Data Analysis
Area of study
Information and Communication Technologies | Mathematics and Statistics
Course Language
English
Intakes
Program start dateApplication deadline
2026-01-13-
2027-01-13-
About Program

Program Overview


Course Overview

The course DD2352 Algorithms and Complexity is a 7.5 credit course that focuses on the core principles of algorithm development and computational complexity. Students will explore key algorithm design techniques, analyze their performance, and dive deep into the complexity classes that define what problems computers can solve.


Information per Course Offering

The course is offered in the Spring 2026 semester, with the option to choose between single courses and programme students.


Course Syllabus

The course syllabus is available as a PDF and outlines the course contents, learning outcomes, and examination information.


Content and Learning Outcomes

Course Contents

The course covers the following topics:


  • Design principles of algorithms: Divide and conquer, greedy algorithms, dynamic programming
  • Algorithm analysis
  • Probabilistic algorithms
  • Approximation algorithms
  • Selected applications in sets, graphs, arithmetic, and geometry
  • Implementation of algorithms
  • Computability and complexity: Reductions, complexity classes P, NP, PSPACE, and BPP, NP completeness and NP hardness reductions, undecidable problems

Intended Learning Outcomes

After passing the course, students should be able to:


  • Develop and implement algorithms and reductions, and analyze them with respect to correctness and efficiency
  • Compare alternative algorithms considering efficiency
  • Define and explain central concepts such as P, NP, NP-completeness, and undecidability
  • Compare problems with respect to complexity by means of reductions In order to:
  • Independently design computer programs that use time and memory efficiently, contributing to economically and environmentally sustainable development
  • Identify problems that are unrealistically resource demanding or not possible to solve on a computer

Literature and Preparations

Specific Prerequisites

Students must have knowledge in:


  • Basic computer science (6 credits)
  • Programming (6 credits)
  • Calculus in one variable (7.5 higher education credits)
  • English B/6 from Upper Secondary School Active participation in a course offering where the final examination is not yet reported in LADOK is considered equivalent to completion of the course.

Recommended Prerequisites

Knowledge of discrete mathematics is necessary. Students who have not completed 7.5 higher education credits of discrete mathematics must take one of these courses in parallel with DD2352. Knowledge of probability theory is recommended but can be learned during the course.


Literature

Information about course literature can be found in the course memo or in the course room in Canvas.


Examination and Completion

Grading Scale

The grading scale is A, B, C, D, E, FX, F.


Examination

The course consists of:


  • MAS2 - Mastery Test (1.5 credits)
  • MAS1 - Mastery Test (1.5 credits)
  • TEN1 - Examination (3.0 credits)
  • LAB1 - Laboratory Work (1.5 credits) The examiner may adapt an examination for students with documented disabilities. The examiner may apply another examination format when re-examining individual students. If the course is discontinued, students may request to be examined during the following two academic years.

Further Information

Course Room in Canvas

Registered students can find further information about the course implementation in the course room in Canvas.


Offered by

The course is offered by EECS/Computer Science.


Main Field of Study

The main field of study is Computer Science and Engineering.


Education Cycle

The course is part of the second cycle.


Supplementary Information

This course has replaced DD2354 Algorithms and Complexity. The course cannot be combined with DD1352, DD2350, or DD2354. The EECS code of honor applies to this course.


Additional Regulations

Students who have not completed 7.5 higher education credits of discrete mathematics must take one of these courses in parallel with DD2352.


See More