### Design and Analysis of Algorithms (6 op) 3621511

#### Course description

Design principles of algorithms and their application to computing
problems. Topics include NP-completeness, analysis techniques, and
main design principles including divide-and-conquer, dynamic
programming, and branch-and-bound. Examples of advanced data structures
and algorithmic approaches (like heuristics, approximation, and
randomization) to solving hard computational problems.

#### Lectures

Lectures are in youtube videos and should be watched **before** the given date.

Schedule and Lecture Notes

Teacher:
Pasi Fränti

Schedule: 34 h, starting from **6.9.2022 (Tue)**

Tuesday 14-16:
Discussions
(Teams)
about the weekly topics.

#### Exercises

Exercises are made at your own time. Solutions must be submitted via moodle
(link will appear later), or by email before the exercise session starts.
Minimum of 33% tasks need to be done to pass the course. Deadline for the
submissions each week is Friday 10:00. All submitted exercises count as one point.
To pass the course, you need 33% of the total points. Participating the exercise
sessions is obligatory.

Teachers:
Practical arrangements: Gulraiz I. Choudhary

Teachers on the session: Pasi Fränti and Sami Sieranoja

Schedule: 16 h, starting from **10.9.**

Friday: 10-12 TB248 +
(Teams)

Exercise 1 (new)

Exercise 2 (new)

Exercise 3 (new)

Exercise 4 (new)

Exercise 5 (new)

Exercise 6 (new)

Exercise 7 (new)

Exercise 8 (new)

Exercises are submitted via Moodle. Use the course key: daa_2022

#### Grading

Your course score is calculated as a weighted sum of the exam points (90%)
and the exercise points (20%). Course grade is calculated based on the
following lower limits:

- 90% = 5
- 80% = 4
- 70% = 3
- 60% = 2
- 50% = 1

#### Preliminary knowledge

Data Structures and Algorithms I and II

#### Exams

Friday xx.x. 12-16 (Joensuu M100)

Friday xx.x. 12-16 (Joensuu M100)

Friday xx.x. 12-16 (Joensuu M100)

Register via Peppi

#### Recommended literature

T. Cormen, C. Leiserson, and R. Rivest: *Introduction to Algorithms*,
MIT Press, 1990.

S.S. Skiena: *The Algorithm Design Manual*, Springer 2008.
P. Fränt: i*Design & Analysis of Algorithms*,
Lecture Notes, 2012-2018.

Course page in WebOodi

Advanced Topics in Algorithms