IDATA2302

Algorithms and Data Structures

Autumn

Ålesund

Norwegian and English

Overview

36 candidates

Average grade

D

1.83

0.24

Pass rate

72%

3 points

Grade distribution
Average over time
Pass rate over time

About this course

Content

The course is about problem solving using algorithmic thinking.

Techniques and algorithms:

  • Recursion
  • Sorting
  • Searching
  • Hashing
  • Graph algorithms

Data structures:

  • Tables/arrays
  • Lists
  • Queues
  • Stacks
  • Trees
  • Graphs

Complexity theory:

  • Complexity and Big O notation
  • Time- and memory use

Learning outcomes

Knowledge - candidate:

  • Is familiar with, can explain and apply a set of standard algorithms, including sorting, searching and graph algorithms.
  • Can describe and explain different data structures (arrays/tables, linked lists, queues, stacks, trees and graphs).
  • Understands recursive thinking/method for problem solving and programming.
  • Can compare algorithm complexity.
  • Can describe NP-completeness.

Skills - candidate:

  • Can apply a set of known algorithms for effectively solve practical programming problems.
  • Can handle advanced data structures (with emphasis on trees and graphs)

General competence - candidate:

  • Can combine standard algorithms into larger programs.
  • Is aware of the connection between complexity and execution time for programs

Teaching methods

Lectures, exercises, mentoring.