General

Professor: Panagiota Fatourou
Office: Κ223, Computer Science Department, Voutes Campus
Office Hours: Wednesday at 12:00 - 13:00 and Thursday at 12:00 - 13:00
E-mail Address: rg.cou.dsc@urutaf
Telephone: +30 2810 393549
Lesson's e-mail address: rg.cou.dsc@a042yh


Teaching Schedule

Day Time Classroom
Wednesday 13:00 - 15:00 Amph. B
Thursday 13:00 - 15:00 A. 113


Assistive Lectures' Schedule

Day Time Classroom
Monday 13:00 - 15:00 Amph. B


Course Summary

The course focuses on the study of basic data structures, i.e. arrays, stacks, queues, lists, trees, etc., as well as on more complex data structures such as balanced trees, graphs and others. In addition, the technique of hashing will be taught, as well as data structures for the implementation of dynamic dictionaries, simple sets and sets with special operations. Selected topics on sorting and basic techniques of algorithm design will be also taught.

Learning Outcomes

  • Modeling a problem through proper abstraction.
  • Designing or choose the appropriate data structures for specific programming problems.
  • Programming in a modular way using data abstractions.
  • Implementing and evaluate different data structures.
  • Studying basic algorithmic techniques.
  • Studying formal proofs of correctness.


Prerequisities

CS100 (Introduction in Computer Science) and CS150 (Programming) are prerequisite courses for this course. Successful completion of CS118 (Discreet Mathematics) will be also helpful. Students that have not succeeded on the courses mentioned above, do not have the required background to attend the course.