Efficient Algorithms (MAE748)

Από Wiki Τμήματος Μαθηματικών



School of Science

Academic Unit

Department of Mathematics

Level of Studies


Course Code




Course Title

Efficient Algorithms

Independent Teaching Activities

Lectures (Weekly Teaching Hours: 3, Credits: 6)

Course Type

Special Background

Prerequisite Courses -
Language of Instruction and Examinations


Is the Course Offered to Erasmus Students


Course Website (URL) See eCourse, the Learning Management System maintained by the University of Ioannina.

Learning Outcomes

Learning outcomes

The course is introducing advanced algorithmic concepts and techniques. Several optimization problems are examined and solved using algorithmic techniques. Upon a successful completion of the course, the student will be able to:

  • apply advanced algorithmic techniques and methods to solve advanced optimization problems,
  • understand and apply advanced algorithmic analysis methods to study the efficiency of algorithms,
  • analyze and compare the effectiveness of different algorithmic methods,
  • combine advanced algorithmic techniques to solve new problems.
General Competences
  • Search for, analysis and synthesis of data and information, with the use of the necessary technology
  • Adapting to new situations
  • Criticism and self-criticism
  • Production of free, creative and inductive thinking


Basics: Algorithm analysis (correctness, time and space complexity), asymptotic analysis (worst and average care), recursive algorithms (Strassen’s algorithm for the matrix multiplication problem), lower bounds (comparison-based sorting, the convex-hull problem). Amortized analysis: The accounting, aggregate and potential methods. Minimum spanning trees: The greedy algorithms by Tarjan, Prin and Kruskal. Minimum cuts: The algorithm by Stoer and Wagner. Maximum flows: Basis terminology (flow network, augmenting path, residual network) the max-flow min-cut theorem, the algorithms by Ford και Fulkerson, Edmonds και Karp, and Dinitz. Planar graphs: Basic terns, Euler’s formula, Kurantowski Theorem, the 5-color theorem, drawings of planar graphs: the algorithm by de Fraysseix, Pach and Pollack, the crossing Lemma. Approximation algorithms: simple algorithms of constant approximation factor, Christofides’ algorithm for the traveling salesman problem, approximation schemes for knapsack and bin packing. Randomized algorithms: simple randomized algorithms for verifying polynomial identities and 2-SAT, random walks.

Teaching and Learning Methods - Evaluation


Face to face

Use of Information and Communications Technology Yes
Teaching Methods
Activity Semester Workload
Lectures 39
Self study 78
Exercises 33
Course total 150
Student Performance Evaluation
  • Written final exam.
  • Two exercises.

Attached Bibliography

See the official Eudoxus site or the local repository of Eudoxus lists per academic year, which is maintained by the Department of Mathematics. Books and other resources, not provided by Eudoxus:

  • ---