Summer Semester 24
Lecture
Datenstrukturen und Algorithmen (DSA)
- Lecturer:
- Prof. Dr.-Ing. Amr Rizk, (habil.)
- Term:
- Summer Semester 2024
- Time:
- Lecture Fr. 10:15 - 11:45 , Exercise Fr. 08:30 - 10:00
- Room:
- Lecture/Exercise: SH 601
- Start:
- 08.04.2024
- End:
- 19.07.2024
- Language:
- German/English
Description:
Vorlesungszeit:
Fr, 10:15 - 11:45 (Raum SH601)
Übungszeit:
Fr, 8:15 - 11:45 (Raum SH601)
Die erste Vorlesung findet am 12.04.2024 statt.
Die erste Übung findet am 26.04.2024 statt.
Bitte beachten, dass die Vorlesungs- und Übungszeiten im LSF vertauscht sind!
Einführung
In der Vorlesung werden die Grundlagen zu Algorithmen und Datenstrukturen betrachtet. Der Kurs behandelt folgende Themen:
- Einführung: Begriffe, Maße, Landau Notation, Maschinenmodell, Einfache Programmanalyse
- Datenstrukturen für Sequenzen (Arrays, Listen, Stapel, Warteschlangen)
- Abstrakte Datentypen
- Hashing (Verkettung, universelles Hashing, Sondierverfahren)
- Algorithmische Prinzipien
- Sortieren (InsertionSort, SelectionSort, BubbleSort, MergeSort, HeapSort und QuickSort)
- Prioritätswarteschlangen (binäre Heaps, Binomialheaps)
- Suchverfahren und Suchbäume (binäre Suchbäume, AVL-Bäume, (a,b)-Bäume)
- Graphalgorithmen (Graphrepräsentation, Traversierung per DFS/BFS, Zweifachzusammenhangskomponenten, starke Zusammenhangskomponenten, topologische Sortierung, kürzeste Wege, minimale Spannbäume, TSP)
- Grundlagen verteilter Algorithmen, Grundzuüge der Nebenläufigkeit
- Optional: Optimierungsalgorithmen und Pattern Matching
Literature:
- K. Mehlhorn, P. Sanders, M. Dietzfelbinger: Algorithmen und Datenstrukturen. Springer Verlag Berlin; Juli 2010
- Th.H. Cormen et al.: Algorithmen – eine Einführung. Oldenbourg 2007