GENERAL INFORMATION:

Instructors: Efraimidis Pavlos
Semester: 8th

CREDITS:

ECTS Units: 3
Teaching Units: 4
Theory Hours: 2
Exercises Hours: 1
Lab Hours: 2

COURSE PAGE: https://eclass.duth.gr/courses/TMA420/

Course Description

Basic concepts of algorithms. Sorting and searching. Computer Models. The Turing machine and the Random Access Machine. Complexity of Algorithms. Algorithm Design Techniques. Divide and conquer. Recursion and refactoring recursion. Dynamic Programming. Greedy Algorithms. Algorithms of graphs and trees. Randomized Algorithms. Computational complexity classes. Classes P and NP. NP-Complete problems. Reductions. Heuristic techniques and approximation algorithms. Design and implementation of basic algorithms in modern programming environments.