Hauptinhalt
CS 210 — Algorithmen und Datenstrukturen
(engl. Algorithms and Data Structures)
Niveaustufe, Verpflichtungsgrad | Basismodul, Pflichtmodul |
Lehr- und Lernformen, Arbeitsaufwand |
Vorlesung (4 SWS), Übung (2 SWS), 270 Stunden (90 Std. Präsenzzeit, 180 Std. Selbststudium) |
Leistungspunkte, Voraussetzungen zum Erwerb |
9 LP Studienleistung(en): Erreichen von mindestens 50 Prozent der Punkte aus den wöchentlich zu bearbeitenden Übungsaufgaben und mündliche Präsentation der Lösung von mindestens zwei der Übungsaufgaben. Prüfungsleistung: Klausur |
Sprache, Benotung |
Deutsch,Die Benotung erfolgt mit 0 bis 15 Punkten gemäß der Prüfungsordnung für den Studiengang B.Sc. Informatik. |
Dauer des Moduls, Häufigkeit |
Ein Semester, Jedes Sommersemester |
Modulverantwortliche(r) | Prof. Dr. Christian Komusiewicz, Prof. Dr. Bernhard Seeger |
Inhalt
- Analyse von Algorithmen und Datenstrukturen: Entwurfsprinzipien, Komplexität, Asymptotische Analyse
- Elementare Datenstrukturen: Listen, Stacks, Queues, Mengen, Bäume, Maps, Zeichenketten, Graphen
- Elementare Algorithmen: Suchen, Sortieren, Einfügen, Entfernen, Transformationen und Traversierungen
- Implementierungsvarianten: Balancierte Bäume, Hashsets, Huffman Codes
- Polymorphe (generische) Datenstrukturen: Behälter und Iteratoren
- Fortgeschrittene Programmiertechniken, z.B.: Thread Programmierung, Design Patterns
Qualifikationsziele
Die Studierenden
- sind in der Lage, Algorithmen und Datenstrukturen zu entwerfen,
- sind in der Lage, Aufwandsbeurteilung und -abschätzung zu betreiben,
- sind in der Lage, Abstraktionstechniken anzuwenden,
- haben vertiefte Programmierkenntnisse,
- haben Kenntnisse in der Analyse, im Design und in der Realisierung von Software,
- können wissenschaftliche Arbeitsweisen befolgen (Erkennen, Formulieren, Lösen von Problemen, Schulung des Abstraktionsvermögens),
- sind in der Lage über wissenschaftliche Inhalte frei zu sprechen, sowohl vor einem Publikum als auch in einer Diskussion.
Voraussetzungen
Keine. Empfohlen werden Grundkenntnisse in Programmierung, wie sie in dem Basismodul Objektorientierte Programmierung vermittelt werden.
Verwendbarkeit
Das Modul kann im FB12 verwendet werden im Studiengang bzw. in den Studiengängen
- B.Sc. Data Science
- B.Sc. Informatik
- B.Sc. Mathematik
- B.Sc. Wirtschaftsinformatik
- B.Sc. Wirtschaftsmathematik
- M.Sc. Mathematik
- Bachelor-Nebenfach Mathematik
- Bachelor-Nebenfach Informatik
Im Studiengang B.Sc. Informatik muss das Modul im Studienbereich Informatik Basismodule absolviert werden.
Das Modul kann auch in anderen Studiengängen absolviert werden (Exportmodul).
Literatur
- H.P.Gumm, M.Sommer: Einführung in die Informatik, 10.Aufl., Oldenbourg 2013;
- G.Saake, K.-U.Sattler: Algorithmen und Datenstrukturen. 4. Aufl., dpunkt 2010;
- Th.H. Cormen et al.: Algorithmen – eine Einführung. Oldenbourg 2007;
- K. Mehlhorn, P. Sanders, M. Dietzfelbinger: Algorithmen und Datenstrukturen. Springer Verlag Berlin; Juli 2010.
- T. Ottmann, P. Widmayer: Algorithmen und Datenstrukturen, Spektrum Akademischer Verlag; 2012.
Bitte beachten Sie:
Diese Seite beschreibt ein Modul gemäß dem im Wintersemester 2023/24 aktuellsten gültigen Modulhandbuch. Die meisten für ein Modul gültigen Regeln werden nicht durch die Prüfungsordnung festgelegt, und können daher von Semester zu Semester aktualisiert werden. Folgende Versionen liegen im Online-Modulhandbuch vor:
- WiSe 2016/17
- SoSe 2018
- WiSe 2018/19
- WiSe 2019/20
- WiSe 2020/21
- SoSe 2021
- WiSe 2021/22
- WiSe 2022/23
- WiSe 2023/24
Das Modulhandbuch enthält alle Module, unabhängig vom aktuellen Veranstaltungsangebot, vergleichen Sie dazu bitte das aktuelle Vorlesungsverzeichnis in Marvin.
Die Angaben im Online-Modulhandbuch wurden automatisch erstellt. Rechtsverbindlich sind die Angaben der Prüfungsordnung. Wenn Ihnen Unstimmigkeiten oder Fehler auffallen, sind wir für Hinweise dankbar.