Description of the lecture:

The lecture deepens and extends the knowledge from the lecture CS2 - Algorithms and Data Structures. Specifically, we look at different algorithm paradigms, i.e. schemes for designing efficient algorithms. To this end, we first look at the already familiar paradigms incremental, divide-and-conquer and greedy and apply these to various problems. Building on this, we will learn about dynamic programming as well as the methods backtracking and branch-and-bound. We also look at a paradigm specifically for geometric problems: the sweepline method.

Learning outcomes:

After successfully completing the module

  • students know a number of algorithm paradigms
  • students will be able to develop efficient algorithms for problems based on the paradigms
  • understand the advantages and disadvantages of different paradigms
Semester: WiSe 2025/26