|
Algorithmen und Softwareentwicklung
DIS 2.1
|
|||||
|---|---|---|---|---|---|
| Workload | Credits | Studiensemester | Frequenz | Dauer | |
| 180 h | 6 | 2. Sem. | jährlich | 1 Sem. | |
| 1 | Lehrveranstaltungen | Kontaktzeit | Selbststudium | Sprache | Gruppengröße |
| ∑ 4 SWS / 60 h | ∑ 120 h | ||||
| DIS2.1 Algorithmen und Softwareentwicklung (Seminaristischer Unterricht) | DIS2.1 4 SWS / 60 h | DIS2.1 120 h | DIS2.1 Deutsch | DIS2.1 70 | |
| 2 | Lernergebnisse (learning outcomes / Kompetenzen): | ||||
Grundverständnis von Algorithmen Das Modul vermittelt:
Dies wird vertieft durch die Umsetzung von Algorithmen in einer Programmiersprache sowie durch die Diskussion von praktischen Anwendungen und realen Beispielen aus der IT. Die Studierenden lernen auf diese Weise, die Relevanz, die Effizienz und den Nutzen von komplexeren Algorithmen in der Praxis zu erkennen, diese anzuwenden und erwerben die Fähigkeit zur Analyse und zum Verständnis komplexer technischer Probleme. | |||||
| 3 | Inhalte: | ||||
| DIS2.1 Einleitung 1. Motivation und Anwendungsbeispiele
2. Grundbegriffe und Notationen
Grundlegende Datenstrukturen besser verstehen 3. Arrays und Listen
4. Stapel (Stacks) und Warteschlangen (Queues)
5. Bäume und binäre Bäume
6. Hash-Tabellen
7. Grundlegende Graphenkonzepte
8. Graphenalgorithmen (ein Überblick)
Sortieren 9. Einführung in Sortierverfahren (ein Überblick)
Fortgeschrittene Themen 10. Dynamische Programmierung
11. Greedy-Algorithmen
Abschluss (optional) 12. Komplexitätstheorie und NP-Vollständigkeit
| |||||
| 4 | Lehrformen: | ||||
|
Seminaristischer Unterricht (DIS2.1)
|
|||||
| 5 | Teilnahmevoraussetzungen: | ||||
|
Keine |
|||||
| 6 | Art der Prüfung: | ||||
|
Klausurarbeit
|
|||||
| 7 | Voraussetzungen für die Vergabe von Kreditpunkten: | ||||
| - | |||||
| 8 | Art: Pflicht- oder Wahlmodul | ||||
| Pflichtmodul | |||||
| 9 | Bewertungsmethoden benotet/unbenotet | ||||
| benotet | |||||
| 10 | Stellenwert der Note für die Endnote: | ||||
| 3 % | |||||
| 11 | Modulbeauftragte/r und hauptamtlich Lehrende | ||||
| Modulbeauftragte/r: Prof. Dr. Matthias Groß
Hauptamtlich Lehrende:
Prof. Dr. Matthias Groß
|
|||||
| 12 | Sonstige Informationen: | ||||
| - | |||||
| 13 | Literatur / Quellen | ||||
|
Blum, Norbert (2013): Algorithmen und Datenstrukturen. München: Oldenbourg Wissenschaftsverlag (E-Book: https://doi.org/10.1524/9783486719666) Häberlein, Tobias (2012): Praktische Algorithmik mit Python. München: Oldenbourg Wissenschaftsverlag (E-Book: https://doi.org/10.1524/9783486714449) Sweigart, Al (2020): Automate the boring stuff with Python. San Francisco: No Starch Press, Inc. (E-Book: https://automatetheboringstuff.com/) |
|||||