Algorithmen und Datenstrukturen im SS 2019
verantw. Hochschullehrer: | PD Dr. Henning Bordihn |
Voraussetzungen: | Grundlagen der Programmierung |
SWS: | 4 (2 V + 2 Ü) |
Credits: | 6 |
Termine
Vorlesung: | Freitag | 14:15-15:45 | 03.06.H04 | erstmals am 12.04.19 | |
Übung | G1 | Montag | 14:00-15:30 | 03.01.H10 | erstmals am 15.04.19 |
Übung | G2 | Montag | 16:15-17:45 | 03.06.S18 | erstmals am 15.04.19 |
Übung | G3 | Mittwoch | 10:15-11:45 | 03.06.S27 | erstmals am 17.04.19 |
Übung | G4 | Donnerstag | 16:15-17:45 | 03.06.S26 | erstmals am 18.04.19 |
Ausnahmen:
- Keine Vorlesungen am 19.04.19 und am 31.05.19.
- Vorlesung am 14.06.19 (HIT) von 15:00 bis 16:30 Uhr
- Statt der Übungen am Ostermontag (22.04.19) Ersatztermine am Donnerstag, 25.04.19, für G1 von 8:15 - 9:45 im Hörsaal H01 und für G2 von 10:15 - 11:45 im Computerpool (03.04.0.03/0.04).
- Keine Übungen am 01.05.19, 30.05.19, 10.06.19. Bitte nutzen Sie in den jeweiligen Wochen die anderen Übungstermine.
Klausurtermin: Freitag, 2. August 2019, 10:30 - 12:30 Uhr im H03+H04.
-->Leistungserfassung
Insgesamt können 100 Klausurpunkte erworben werden.
In unregelmäßigen Abständen sind Algorithmen in Python zu implementieren und abzugeben.
Die Programmierung soll sebstständig in einem Team aus zwei bis drei StudentInnen erfolgen.
Insgesamt werden durch eine vollständige Lösung 20 Klausurpunkte erworben.
Eine Übernahme der (gesamten) Projektleistung aus dem SS 2018 ist möglich, aber nicht aus weiter zurückliegenden Semestern.
Wenn Sie eine Übernahme Ihrer Projektleistung wünschen, dann müssen Sie uns das schriftlich bis zum 1. Mai anzeigen.
Die Adresse hierfür wird in der Vorlesung und auf Moodle bekanntgegeben.
In der Prüfungszeit nach dem Semester wird eine 120-minütige Klausur geschrieben. Dabei geht es um 80 Klausurpunkte.
Eine aktive Teilnahme an den Übungen wird erwartet. Durch Beiträge zur Lösung der Übungsaufgaben können Bonuspunkte für die Klausur erarbeitet werden. Es müssen allerdings ohne Berücksichtigung der Bonuspunkte mindestens 50 Klausurpunkte (inklusive der Punkte aus den Implementierungen) erreicht werden.
Inhalte
- Abstrakte Datentypen
- Implementierung von Datentypen
- Komplexität von Algorithmen
- Entwurfsparadigmen für Algorithmen:
Divide-and-Conquer, Backtracking, Greedy-Methode, Dynamisches Programmieren - Algorithmen auf Sequenzen und Matrizen
- Algorithmen auf Bäumen
- Algorithmen auf Graphen
- Suchen und Sortieren
- NP-vollständige Probleme
Literatur
Wird in der Vorlesung bekanntgegeben.