General Information


The grade of the course consists of the final exam (80%), homework assignment (10%) and programming projects (10%).

There will be around ten theoretical homework assignments, the grade for each question is 2, 1 or 0.

There will be two programming projects which should be submitted in pairs.


Video Recording of previous semester can be found here.


Text book:
Introduction to Algorithms, by Cormen, Leiserson, Rivest and Stein.

Supportive book:
Data Structures and Algorithms, by Aho, Hopcroft and Ullman.

The course follows mostly the first book. Recommended purchase (to be used by other courses).

See also the extensive list of recommended references


Amortized analysis demonstrations.

Here are two animated demonstrations of different dictionary implementations.
They both require Java.
We found them on the internet and we cannot guarantee that they are implement exactly as we saw in class, however they do demonstrate the basic principles.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License