Inhalt der Veranstaltung

Im 3. Semester des Zyklus Algorithmen und Programmierung werden Daten- und Programmstrukturen behandelt. Ausgangspunkt ist das Geheimnisprinzip und seine Bedeutung für die Strukturierung von Programmen und die Konstruktion von Datenobjekten mittels Modulen und Klassen. Eine zentrale Rolle bei der Modellierung von Daten spielt der Begriff der Datenabstraktion verbunden mit der Unterscheidung zwischen Spezifikation und Implementierung abstrakter Datenobjekte und Datentypen. Mengen, Relationen, Listen, Bäume, Graphen u.a. werden als abstrakte Typen eingeführt. Anschließend werden effizient manipulierbare Repräsentationen dieser Typen betrachtet und die zugehörigen Algorithmen auf ihre Komplexität hin untersucht. Zu den für die Repräsentation verwendeten Verfahren und Datenstrukturen gehören Hashtransformationen, binäre Bäume und Suffixbäume.

In der objektorientierten Programmierung spielen neben der Datenabstraktion Vererbung und Polymorphie eine wesentliche Rolle. Wir werden daher abstrakte Datentypen häufig unter Verwendung von Vererbungsmechanismen spezifizieren und implementieren. Programmiert wird imperativ mit Java und funktional mit Haskell.

Die Veranstaltung ist Pflichtveranstaltung des Grundstudiums in allen Studiengängen Informatik. 

Hinweis : 

Studierenden im Diplomstudiengang Informatik wird empfohlen, die Vordiplomprüfung "Algorithmen und Programmierung" unmittelbar im Anschluss an die Veranstaltung abzulegen. 


hs@inf.fu-berlin.de