TDT4120 - Algorithms and Data Structures


Examination arrangement

Examination arrangement: School exam
Grade: Letter grades

Evaluation Weighting Duration Grade deviation Examination aids
School exam 100/100 4 hours E

Course content

Methods for analysing the efficiency of algorithms, divide and conquer techniques, recursive solution methods. Methods for ordering, searching and sorting. Data structures for efficient retrieval of data, dynamic programming and greedy algorithms. Data structures for implementing graphs and networks, as well as methods for traversals and searches. Algorithms for finding the best path(s) and matchings, spanning trees and maximum flow. Theory of problem complexity. Algorithms are expressed in a language-independent manner.

Students without access to the course may instead take TDT4121 Introduction to algorithms, which is equivalent as a basis for later courses, and is aimed toward programs that do not have computer science as part of their core.

Learning outcome

Knowledge: The candidate should have knowledge about (1) a broad spectrum of established algorithms that are useful in several areas of application, (2) classical algorithmic problems with known efficient solutions, and (3) complex problems without known efficient solutions.

Skills: The candidate should be able to (1) analyze the efficiency of an algorithm to achieve good solutions for a given problem, (2) formulate a problem so it can be handled in a rational manner by an algorithm, and (3) use well-known design methods to construct new efficient algorithms.

General competence: The candidate should be able to (1) use well-known algorithms and available program modules on new problems, and (2) develop and implement new solutions for complex problems with a basis in practical reality.

Learning methods and activities

Lectures and individual exercises.

Compulsory assignments

  • Exercises

Further on evaluation

If there is a re-sit examination, the examination form may change from written to oral.

Course materials

Cormen, Leiserson, Rivest, Stein: Introduction to Algorithms, fourth edition. (This may change.)

Credit reductions

Course code Reduction From To
SIF8010 7.5
IT1105 7.5
MNFIT115 7.5
MNFIT112 7.5
IDATA2302 7.5 AUTUMN 2020
IDATT2101 7.5
TDT4121 7.5 AUTUMN 2022
More on the course

Version: 1
Credits:  7.5 SP
Study level: Intermediate course, level II


Term no.: 1
Teaching semester:  AUTUMN 2024

Language of instruction: Norwegian

Location: Trondheim

Subject area(s)
  • Technological subjects
Contact information
Course coordinator: Lecturer(s):

Department with academic responsibility
Department of Computer Science


Examination arrangement: School exam

Term Status code Evaluation Weighting Examination aids Date Time Examination system Room *
Autumn ORD School exam 100/100 E INSPERA
Room Building Number of candidates
Summer UTS School exam 100/100 E INSPERA
Room Building Number of candidates
  • * The location (room) for a written examination is published 3 days before examination date. If more than one room is listed, you will find your room at Studentweb.

For more information regarding registration for examination and examination procedures, see "Innsida - Exams"

More on examinations at NTNU