ΥΠ25 - Algorithms and Complexity

Information

Code : ΥΠ25

Type : Obligatory

Semester : 6

ECTS credits: 5

Course URL: https://eclass.hua.gr/courses/DIT110/

Expected Outcomes

The objective of this course is for students to become familiar with the design and analysis of algorithms for the solution of basic problems. Students will learn:
Basic algorithm design techniques,
basic techniques for measuring and evaluating the performance of algorithms,
complexity classes like P, NP and EXP
NP-Completeness and NP-Hardness and techniques to deal with it.

Content

1st week lecture: Introduction.
2nd week lecture: Analysis of Algorithms
3rd week lecture: Graph Algorithms
4th week lecture: Greedy Algorithms Ι
5th week lecture: Greedy Algorithms ΙΙ
6th week lecture: Divide Conquer Ι
7th week lecture: Divide Conquer ΙΙ
8th week lecture: Dynamic Programming Ι
9th week lecture: Dynamic Programming ΙΙ
10th week lecture: Networks, Max Flow Min Cut
11th week lecture: NP Intractability Ι
12th week lecture: NP Intractability II
13th week lecture: Dealing with NP-Completeness

Evaluation Means

 

Bibliοgraphy

Jon Kleinberg Eva Tardos. Algorithm Design. Pearson Education, 2013.
Cormen, Leiserson, Rivest Stein. Introduction to Algorithms. MIT Press. Third Edition. 2009.