Effiziente Algorithmen
Stammvorlesung 4V + 2 Ü, Sommersemester 2000
[Termine]
[Zusammenfassung]
[Skript]
[Übungen]
Effiziente Algorithmen werden in fast allen Bereichen der Informatik
benötigt. Leider gibt es kein Patentrezept, wie man ein gegebenes Problem
schnell und gut lösen kann. Zentrales Ziel dieser Vorlesung über
effiziente Algorithmen ist es, Techniken zum Entwurf effizienter Algorithmen
vorzustellen und das Verhalten dieser Algorithmen zu analysieren. Dieses
geschieht anhand von ausgewählten Beispielproblemen, an denen man
typische Methoden des Algorithmenentwurfs aufzeigen kann. Genauso wichtig wie
der Algorithmenentwurf sind natürlich auch Korrektheitsbeweise der
Algorithmen und Laufzeitanalysen.
Natürlich kann nicht erwartet werden, dass in der beruflichen Praxis exakt
genau die Probleme auftreten werden, die in der Vorlesung behandelt werden
sollen. Wer jedoch über das entsprechende Handwerkszeug verfügt und
genügend ähnliche Probleme und deren Lösung gesehen hat, wird
diese praktischen Probleme mit großer Erfolgsaussicht bearbeiten
könen. Behandelt werden sollen in dieser Vorlesung insbesondere
Algorithmen für Probleme auf Graphen wie Zusammenhangsprobleme,
kürzeste Wege, minimale Spannbäme, Flüsse in Netzwerken und die
Berechnung maximaler Matchings.
Weitere Probleme von praktischer Relevanz sind Hashing, die Berechnung von
Potenzen, Primzahltests für sehr große Zahlen sowie Probleme aus der
algorithmischen Geometrie, um nur einige zu nennen. Für andere Probleme,
wie das Rucksackproblem und das Traveling Salesman Problem, die vermutlich
nicht effizient lösbar sind, werden Approximationsverfahren vorgestellt.
Literatur:
Zur Vorlesung wird ein Skript verfügbar sein.
Darüberhinaus empfehlen wir die folgenden Bücher als vertiefende
Lektüre.
- R.K. Ahuja, T.L. Magnanti, J.B. Orlin. Network Flows: Theory,
Algorithms and Applications, Prentice Hall, 1993.
- T.H. Cormen, C.E. Leiserson, R.L. Rivest. Introduction to
Algorithms, MIT Press, 1990.
- T. Ottmann, P. Widmayer: Algorithmen und Datenstrukturen,
BI, 1990.
Grundlage der Vorlesung ist ein Vorlesungsskript, das am 13.04.2000 in der
Vorlesung erworben werden konnte. Wer auf diese Art nicht zu einem Skript
gekommen ist, kann sich ein Exemplar mittels
lprdoc
ausdrucken. Der Dokumentname ist alg-ss00.
In der Vorlesung wurde jeweils am Montag ein Übungsblatt ausgegeben.
Bearbeitungen der Übungsaufgaben waren bis zum
folgenden Montag, 16 Uhr, abzugeben.
- 1. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 17.04.2000
- 2. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 24.04.2000
- 3. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 02.05.2000
- 4. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 08.05.2000
- 5. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 15.05.2000
- 6. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 22.05.2000
- 7. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 29.05.2000
- 8. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 05.06.2000
- 9. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 13.06.2000
- 10. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 19.06.2000
- 11. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 26.06.2000
- 12. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 03.07.2000
- 13. Übungsblatt (auch als
gezipptes Postscript), Abgabe
bis zum 10.07.2000
Der Übungsbetrieb lief vom 17. April bis zum 13. Juli 2000.
Ansprechpartner bezüglich der Übungen sind
Thomas Jansen und
Hubert Wagner.