Algorithms and Data Structures

Core Course, 4+2

Basic Information

Lectures:29.02. - 01.04.2016
Lecturers:Martin Hoefer and Raimund Seidel
First lecture:29.02.2016
First tutorial:29.02.2016
Credits:9 credit points

The course requires basic knowledge in algorithms and data structures as covered by the introductory course "Grundzüge von Algorithmen und Datenstrukturen".

The language of the lecture is English.


Data Structures (hashing, search trees, heaps, union-find, etc.), graph algorithms (shortest path, minimum spanning tree, matching, flow, etc.), optimization techniques (divide-and-conquer, linear programming, approximation algorithms, etc.), analysis techniques (amortized analysis, recurrences, average-case analysis, etc.). See the module description for more details.

Organization and Schedule

This course will be held as a block course throughout March 2016. On every working day (excluding the Easter holidays), there will be lectures in the morning and in the afternoon. In between, there will be exercise sessions.


For more information on the course, visit the following website at the Department of Computer Science:


All books are provided in the library's "Semesterapparat". The course will not follow a particular book.


  • [MS] K. Mehlhorn, P. Sanders: Algorithms and Data Structures - The Basic Toolbox, Springer, 2008 (ISBN: 9783540779773)
  • [CLRS] T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms - Second Edition, McGraw-Hill, 2001 (ISBN: 0262531968) 
  • [KT] J. Kleinberg and E. Tardos, Algorithm Design, Addison Wesley, 2005 (ISBN: 0-321-29535-8)
  • [Meh] K. Mehlhorn, Data Structures and Algorithms, Vols. 1-3, Springer Verlag, 1984 
  • [Koz] D. Kozen, The Design and Analysis of Algorithms, Springer Verlag, 1991