development where design, analysis, implementation, and
experimentation work together. The course motivates this approach
using very basic algorithms and data structures.
On the first glance, these problems may seem to be solved
for a long time. But interestingly, practical and theoretical
solutions are often so different that explaining or bridging
these differences is an interesting area of research.
Concrete examples in the course include sorting, hash tables,
priority queues, search trees, and suffix arrays.
course series. But neither the
"advanced" nor the "AG1" should be taken literally.