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:
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