Table of contents
Teaching
List of Courses
Teaching (Independent)
List of courses where I was independently responsible for the scope of the course, developing the course material, and conducting the lecture/exercises (German: Lehrauftrag). For these courses, more information is provided, e.g., slides, projects, etc. This information is in German, as the courses are all taught in German.
2024/25 (winter term)
- Text Indexing (Lecture, Master)
- Stringology Part of Algorithms 2 (Lecture, Bachelor/Master)
2024 (summer term)
- Advanced Data Structures (Lecture, Master)
2023/24 (winter term)
- Text Indexing (Lexture, Master)
- Stringology Part of Algorithms 2 (Lecture, Bachelor/Master)
2023 (summer term)
- Advanced Data Structures (Lecture, Master)
2022/23 (winter term)
- Text Indexing (Lecture, Master)
- Stringology Part of Algorithms 2 (Lecture, Bachelor/Master)
2022 (summer term)
- Advanced Data Structures (Lecture, Master)
2021/22 (winter term)
- Text Indexing (Lecture, Master)
- Stringology Part of Algorithms 2 (Lecture, Bachelor/Master)
2020/21 (winter term)
- Parallel Algorithms (Proseminar, Bachelor)
- Text Indexing and Information Retrieval (Exercise, Master)
- Presentation Skills Course (Block Course, Bachelor)
Teaching (Assisting)
List of courses where I supported the lecture by giving exercises, creating exercises, supervising students in seminars, etc.
2020 (summer term)
- Introduction to Theoretical Computer Science (Exercises, Help Desk, Bachelor)
Below, you can find videos I created for this course:
2019 (summer term)
- Advanced Data Structures (Seminar, Master)
- Parallel Algorithms (Proseminar, Bachelor)
2018/19 (winter term)
- SACABench (Project Group 616, Master)
2018 (summer term)
- SACABench (Project Group 616, Master)
- Advanced Data Structures (Seminar, Master)
2017 (summer term)
- Advanced Data Structures (Seminar, Master)
2015/16 (winter term)
- SciencePlag (Project Group 558, Master)
- Geometric Algorithms (Proseminar, Bachelor)
2015 (summer term)
- SciencePlag (Project Group 558, Master)
2014/15 (winter term)
- Mathematics for Computer Science 1 (Exercises, Bachelor)
- String Algorithms (Proseminar, Bachelor)
2014 (summer term)
- Mathematics for Computer Science 2 (Exercises, Bachelor)
Theses
I supervised the following students. Supervision includes a weekly meeting where students have time to ask questions, discuss ideas, and present preliminary results. If you are interested in writing a thesis, you can find a list of possible topics below.
Possible Topics for Theses
- Distributed LCP Array Construction
- Compressed Bit Vectors
- Distributed String Sorting
- Parallel Vectorized Wavelet Trees
Supervised Master’s Theses
Karlsruhe Institute of Technology
- Etienne Palanga: A Scalable Approach to the Parallel Construction of Block Trees
- Jan-Benedikt Schwarz: Engineering Succinct Predecessor Data Structures
- Frank Thiemike: Implementation of a Universal Compressed
- Dominik Bez: Perfect Hash Function Generation on the GPU with RecSplit
- Daniel Meyer: Engineering Block Tree Construction
- Dominik Bez: Perfect Hash Function Generation on the GPU
- Marcel Hollerbach: Parallele and Vectorized Wavelet Tree Construction (pdf and topic)
TU Dortmund
- Alexander Herlez: Distributed Text Indexing with Batched Queries
- Johannes Neumann: Implementierung und Optimierung von Y-Fast-Tries
- Sven Brümmer: Practical Parallel Max-Cut Algorithms
- Jonas Ellert: Efficient Computation of Nearest Smaller Suffixes
- Christopher Osthues: LCEs mit Recompression
- Patrick Dinklage: Verteilte parallele Konstruktion von Wavelet-Trees
- Uwe Jentsch: Suffixsortierung mit integrierter LCP-Berechnung
Supervised Bachelor’s Theses
TU Dortmund
- Mathieu Herkersdorf: Parallele Konstruktion von Rank- und Select-Datenstrukturen im Shared Memory
- Alexander Herlez: Implementierung und Auswertung einer Datenstruktur für LCEs
- Tim Schonscheck: Textkompression mithilfe eines sparse Suffix Arrays
- Lucas Weiße: Aufbau eines Clusters mithilfe von Raspberry Pis
- Jan Laumeyer: Effiziente Beantwortung von PSV-Anfragen
- Jan Henrik Wienbrack: Verteilte Textkompression mit Hilfe des LCP-Arrays
- Benedikt Oesing: Effiziente Erstellung von Waveletmatrizen
- Patrick Nowak: Praktische Evaluation einer LZ77-Approximation
- Maximilian Schwarzbach: Visuelle Programmierung - Der Versuch einer Begriffsdefinition