MAT-72006 Advanced Algorithms and Data Structures, 7 cr

Additional information

Suitable for postgraduate studies.

Person responsible

Tapio Elomaa

Lessons

Implementation Period Person responsible Requirements
MAT-72006 2017-01 1 - 2 Tapio Elomaa
Lectures, weekly exercises, examination

Learning Outcomes

After completion of the course the student is familiar with advanced algorithms and data structures. S/he understands how they work, what are their efficiency differences, and the purpose that these techniques serve on applications. General design principles of algorithms and their general analysis techniques have become familiar.

Content

Content Core content Complementary knowledge Specialist knowledge
1. Algorithm Analysis     
2. Sorting and Order Statistics     
3. Data Structures  Augmenting data structures   
4. Advanced Design and Analysis Techniques  Dynamic programming, greedy algorithms, amortized analysis   
5. Advanced Data Structures  Fibonacci heaps   
6. Selected Topics  Matrix operations, linear programming, number theoretic algorithms, approximation algorithms  Deterministic primality testing 

Instructions for students on how to achieve the learning outcomes

The assessment is based on an exam and different exercises done throughout the course. Diligent exercise solving is the best way to achieve the learning outcomes.

Assessment scale:

Numerical evaluation scale (0-5)

Partial passing:

Completion parts must belong to the same implementation

Study material

Type Name Author ISBN URL Additional information Examination material
Book   Introduction to Algorithms   Cormen, Leiserson, Rivest, Stein         No   

Prerequisites

Course Mandatory/Advisable Description
MAT-02650 Algoritmimatematiikka Mandatory   1
MAT-02656 Mathematics for Algorithms Mandatory   1
TIE-02200 Ohjelmoinnin peruskurssi Mandatory   2
TIE-02206 Basic Course on Programming Mandatory   2

1 . This or an equivalent course.

2 . This or an equivalent course.

Correspondence of content

There is no equivalence with any other courses

Updated by: Kauhanen Janne, 23.05.2017