Algorithmen I mit Übung

  • Typ: Vorlesung / Übung (VÜ)
  • Lehrstuhl: Fakultät für Informatik
  • Semester: SS 2014
  • Ort: 30.95 Audimax
  • Zeit: Montag 15:45 bis 17:15
    Mittwoch 14:00 bis 15:30
  • Beginn: 14.04.2014
  • Dozent:

    Prof.Dr. Peter Sanders
    Julian Arz
    Timo Bingmann
    Sebastian Schlag

  • SWS: 4
  • LVNr.: 24500

Klausur

Die Ergebnisse der Nachklausur sind online.

 

Die Ergebnisse der Klausur vom 28.07.2014 sind online.

Kursbeschreibung

Das Modul beeinhaltet die 'Basic Toolbox der Algorithmik'. Im Einzelnen werden folgende Themen bearbeitet:

  • Ergebnisüberprüfung (Checkers) und Zertifizierung
  • Asymptotische Algorithmenanalyse: worst case, average case, probabilistisch, amortisiert
  • Grundbegriffe des Algorithm Engineering
  • Effektive Umsetzung verketteter Listen
  • Unbeschränkte Arrays, Stapel, und Warteschlangen
  • Hashtabellen: mit Verkettung, linear probing, universelles Hashing
  • Sortieren: effiziente Algorithmen (mergesort, quicksort), untere Schranken, radix sort
  • Selektion: quickselect
  • Prioritätslisten: binäre Heaps, addrssierbare Prioritätslisten
  • Sortierte Folgen / Suchbäume: Wie unterstützt man alle wichtigen Operationen in logarithmischer Zeit
  • Graphen (Repräsentation, Traversierung: Breitensuche, Tiefensuche, Anwendungen (topologisches Sortieren,...), Kürzeste Wege: Dijkstra's Algorithmus, Bellman-Ford Algorithmus, Minimale Spannbäume: Kruskals Algorithmus, Jarnik-Prim Algorithmus)
  • Generische Optimierungsalgorithmen (Greedy, Dynamische Programmierung, systematische Suche, Lokale Suche)

Lehrinhalt

Der/die Studierende

  • kennt und versteht grundlegende, häufig benötigte Algorithmen, ihren Entwurf, Korrektheits- und Effizienzanalyse, Implementierung, Dokumentierung und Anwendung,
  • kann mit diesem Verständnis auch neue algorithmische Fragestellungen bearbeiten,
  • wendet die im Modul Grundlagen der Informatik (Bachelor Informationswirtschaft) erworbenen Programmierkenntnisse auf nichttriviale Algorithmen an,
  • wendet die in Grundbegriffe der Informatik (Bachelor Informatik) bzw. Grundlagen der Informatik (Bachelor Informationswirtschaft) und den Mathematikvorlesungen erworbenen mathematischen Herangehensweise an die Lösung von Problemen an. Schwerpunkte sind hier formale Korrektheitsargumente und eine mathematische Effizienzanalyse.

Literaturhinweise

Algorithms and Data Structures -- The Basic Toolbox
K. Mehlhorn und P. Sanders
Springer 2008

Weiterführende Literatur

Algorithmen - Eine Einführung
T. H. Cormen, C. E. Leiserson, R. L. Rivest, und C. Stein
Oldenbourg, 2007

Algorithmen und Datenstrukturen
T. Ottmann und P. Widmayer
Spektrum Akademischer Verlag, 2002

Algorithmen in Java. Teil 1-4: Grundlagen, Datenstrukturen, Sortieren, Suchen
R. Sedgewick
Pearson Studium 2003

Algorithm Design
J. Kleinberg and É. Tardos
Addison Wesley, 2005

Vöcking et al.
Taschenbuch der Algorithmen
Springer, 2008