Modulbeschreibung
Programmieren 2: Programmierkonzepte
Kurzzeichen:
M_Prog2
Unterrichtssprache:
Deutsch
ECTS-Credits:
8
Leitidee:
Sie kennen grundlegende Algorithmen und Datenstrukturen und können diese in praktischen Beispielen einsetzen.
Sie können eigene Abstrakte Datentypen definieren und mithilfe eigener Datenstrukturen implementieren
Sie kennen Bewertungskriterien für Algorithmen und können Algorithmen bewerten.
Modulverantwortung:
Prof. Dr. Joller Josef M.
Standort (angeboten):
Rapperswil-Jona
Modultyp:
Wahlpflicht-Modul für
Informatik STD_02
(Empfohlenes Semester: 2)
Kategorie:Grundlagen Informatik (I-g)
Wahlpflicht-Modul für
Informatik STD_05
(Empfohlenes Semester: 2)
Kategorie:Grundlagen Informatik (I-g)
Wahlpflicht-Modul für
Informatik STD_11
(Empfohlenes Semester: 2)
Kategorie:Grundlagen Informatik (I-g)
Wahl-Modul für
Informatik U1_01
(Empfohlenes Semester: 2)
Modulbewertung:
Note von 1 - 6
Leistungsnachweise und deren Gewichtung
Modulschlussprüfung:
Schriftliche Prüfung, 180 Minuten
Inhalte
Modul- und Lerninhalt:
Entwurf und Analyse von Algorithmen
- Begriff des Algorithmus, reguläre Ausdrücke
XML
Grundlagen (Konzept [wohlgeformt, validiert], DTD, Path, Schema)
Rekursion
Beispiele von Algorithmen: Suchen, Sortieren, Quicksort
Komplexität und asymptotisches Verhalten von Algorithmen (Time, Space) : Bewertung von Algorithmen
Divide-and-conquer, Backtracking, Greedy-Algorithmen
Dynamische Programmierung
Datenstrukturen
Grundlagen: ADT, Stack, Queue, Verkettete Liste, Iterator
Bäume: Traversierung, Suchbäume, Sortieren mit Bäume (HeapSort)
Hashverfahren
Graphen: Grundbegriffe (gerichtete Graphen, gewichtete Graphen, etc.), Breiten- und Tiefen-Durchlauf, kürzester Weg in Graphen
Design Patterns
Konzept und Eigenschaften von Entwurfmuster
Auswahl von wichtigen Design Pattern wie: Strategie, Adapter, Decorator, Singelton, Composite, Observer