Die Studierenden sind in der Lage, algorithmisch zu denken, mit Abstraktionskonzepten zu arbeiten, Aufgaben algorithmisch zu lösen und Algorithmen in Programme zu transformieren. Sie beherrschen sowohl den Entwurf von Algorithmen als auch die Analyse ihrer Struktur und ihres Verhaltens. Sie sind mit Methoden und Konzepten zur systematischen Programmierung und der Modellierung komplexer Datenstrukturen vertraut und kennen Algorithmen zur Lösung wichtiger Standardaufgaben.
Lehrinhalte
Algorithmische Grundkonzepte, Grundbegriffe und Notationsformen; Struktur und Entwurf von Algorithmen; Struktur und Entwurf elementarer und vernetzter Datenstrukturen; Datenabstraktion, abstrakte Datenstrukturen, abstrakte Datentypen; Rekursionsprinzip und rekursive Algorithmen; Komplexitätsanalyse von Algorithmen; Algorithmen mit Zufallszahlen; Sortier- und Suchalgorithmen; Algorithmen auf Zeichenketten; Geometrie- und Graphalgorithmen; Exhaustionsalgorithmen
Untergeordnete Studienfächer, Module und Lehrveranstaltungen