Search for contacts, projects,
courses and publications

Algorithms & Complexity

Description

Algorithms are fundamental to computer science. They are the essence of computer programs and lie at the core of any software system. This course will cover fundamental techniques for designing efficient computer algorithms, proving their correctness, and analyzing their performance. It will also cover a variety of application problems that use these techniques. The contents include greedy algorithms, divide and conquer algorithms, dynamic programming, network flow, NP completeness and computational intractability, approximation algorithms, and randomized algorithms. Techniques on algorithm design and analyisis will be developed by drawing on problems from across many areas of computer science and related fields.

 

 

REFERENCES

  • Algorithm Design; J. Kleinberg and E. Tardos, Addison-Wesley 2005.
  • Useful reference (not required): Introduction to Algorithms, (3rd Edition), by T. Cormen, C. Leiserson, R. Rivest, and C. Stein, McGraw Hill, 2009.

People

 

Papadopoulou E.

Course director

Coiteux-Roy X.

Assistant

Junginger K.

Assistant

Additional information

Semester
Fall
Academic year
2018-2019
ECTS
6
Language
English
Education
Master of Science in Artificial Intelligence, Core course, Lecture, 1st year

Master of Science in Financial Technology and Computing, Elective course, Lecture, 2nd year

Master of Science in Informatics, Foundation course, Lecture, 2nd year

Master of Science in Informatics, Foundation course, Lecture, 1st year

PhD programme of the Faculty of Informatics, Elective course, 1st year

PhD programme of the Faculty of Informatics, Elective course, 2nd year