Introduction to Algorithms

Course ID
CEID_23Y205
Semester
3
Department
Division of Applications and Foundations of Computer Science
Professor
ATHANASOPOULOS STAVROS, VASILOPOULOS IOANNIS, ZAROLIAGIS CHRISTOS
ECTS
6

Course objective: to introduce students to fundamental algorithmic concepts and techniques. Material: Fundamentals of algorithm design and analysis, efficiency of algorithms, asymptotic notation, correctness of algorithms, basic data structures, priority queues and their application to heapsort. Graphs and graph algorithms, graph connectivity and traversal, depth-first search, breadth-first search, acyclic graphs, topological layout. “Divide & Conquer” method and its applications in mergesort, recursion and resolution of recursive relations.Greedy and dynamic programming methods and their application to optimization problems: minimal spanning trees, shortest paths, network flows. Introduction to selected topics (approximation algorithms, elements of linear programming, randomized algorithms).

Skip to content