This subject focuses on the design and analysis of algorithms and the organization of data. Students explore common data structures like arrays, lists, stacks, queues, and trees, learning how to choose the appropriate structure based on the problem. The course also emphasizes algorithm efficiency, introducing Big O notation to analyze time and space complexity. And of course while always asking “Geht es besser?” (German for “Can it be better?“) – a common question posed by the professor.

Lecture Notes