Algorithmen und Datenstrukturen/Logische Programmierung


Modulnummer:

1100600


Leistungspunkte:

9 ECTS


Lehrveranstaltungen:

  • Vorlesung Algorithmen und Datenstrukturen (2 SWS)
  • Übung Algorithmen und Datenstrukturen (2 SWS)
  • Vorlesung Logische Programmierung (2 SWS)

Prüfung:

Klausur (120 min) oder mündliche Prüfung (20 min)


Prüfungsvorleistungen:

Lösen von Übungsaufgaben


Inhalt:

Algorithmen und Datenstrukturen:
Das Modul vermittelt Basiskenntnisse über Entwurfs- und Analysemethoden für effiziente Algorithmen und Datenstrukturen, die die Grundlage jeder Hard- und Software bilden.

  • Grundlegende Begriffe und formale Eigenschaften von Algorithmen
  • Techniken der Algorithmen-Entwicklung
  • Datentypen und Datenstrukturen
  • Grundlegende Datenstrukturen der Informatik und ihre Implementierung
  • Ausgewählte Algorithmen aus dem Bereich Sortieren und Suchen
  • Asymptotische Komplexitätsanalysen

Logische Programmierung:
Die zukünftige Entwicklung großer Softwaresysteme setzt entsprechend der Aufgabenspezifikation die Nutzung unterschiedlicher Programmierparadigmen innerhalb eines Softwaresystems voraus. Der Studierende soll unterscheiden lernen, wann welches Paradigma am zweckmäßigsten anzuwenden ist. Insbesondere durch Übung werden Fertigkeiten im logischen Programmieren erworben, wobei die Besonderheiten gegenüber anderen Paradigmen im Vordergrund stehen. Die logische Programmierung beruht auf der Entdeckung, dass Logik als problemnahe und effiziente Programmiersprache verwendet werden kann. Die bekannteste Vertreterin dieser Sprachen ist Prolog. Das Modul behandelt die theoretischen Grundlagen der logischen Programmierung, führt in die Sprache Prolog ein und zeigt verschiedene praktische Anwendungen z.B. aus den Gebieten Software Engineering und Verarbeitung von natürlicher Sprache. Die im Modul integrierten Übungen ermöglichen, konkrete Erfahrungen mit Prolog zu machen.