Design and Analysis of Algorithms (MAE581)

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



School of Science

Academic Unit

Department of Mathematics

Level of Studies


Course Code




Course Title

Design and Analysis of Algorithms

Independent Teaching Activities

Lectures, laboratory exercises, tutorials, quiz (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

This course aims at introducing to students the philosophy of fundamental algorithmic background and techniques. After successfully passing this course the students will be able to:

  • Understand basic algorithmic techniques
  • Analyze complex algorithms
  • Design new algorithmic tools
  • Combine already-known techniques for solving new algorithmic problems
General Competences
  • Search for, analysis and synthesis of data and information, with the use of the necessary technology
  • Working independently
  • Team work
  • Project planning and management.


  • Fundamental concepts of design and analysis of algorithms
  • Analysis of algorithms, Asymptotical growing functions
  • Typical running times and data structures (lists, arrays, queues, stacks)
  • Stable matching, correctness, priority queue
  • «Divide & Conquer» technique, sorting, recursive formulations
  • Graph algorithms: BFS, DFS, connectedness, topological ordering
  • Greedy algorithms: interval scheduling & shortest paths (Dijkstra)
  • Minimum spanning trees(Prim & Kruskal algorithms), Huffman coding
  • Dynamic programming: maximum flow, interval scheduling, and Knapsack
  • Further Topics: computational complexity and ΝΡ-completeness.

Teaching and Learning Methods - Evaluation



Use of Information and Communications Technology
  • Use of projector and interactive board during lectures.
  • Course website maintenance. Announcements and posting of teaching material (lecture slides and notes, programs).
  • Announcement of assessment marks via the ecourse platform by UOI.
Teaching Methods
Activity Semester Workload
Lectures 39
Working independently 78
Team work 33
Course total 150
Student Performance Evaluation

Final written examination (70%)

  • Design and analyze algorithms

Exercises (30%)

  • Design and analyze algorithms

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:

  • ---