Letzte Änderung : 10.06.2026 12:17:35   


Output

Code: 319600
Module title: Algorithm and Data Structures I
Version: 1.0 (11/2025)
Last update: 3.12.2025 11:01:40
Person responsible for content: Prof. Dr. rer. nat. Batz, Gernot Veit
Veit.Batz@hszg.de

Offered in:Computer Science (B.Sc.) valid from class 2026 (compulsory module)

Semester according to timetable: WiSe (winter semester)
Module level:Bachelor/Diplom
Duration:1 semester
Language of Instruction:German
Place where the module will be offered:Görlitz

ECTS Credits: 5
Student workload (in hours): 150

Number of hours of teaching:
total
subdivided into
4
2
Lecture
1
Seminar/Exercise
1
Laboratory work
0
Other
Self study time (in hours):
sum
subdivided into
105
90
Preparation of contact hours
15
Preparation of exam
0
Other

Learning and teaching methods:

  • Vorlesung

  • Seminar/Übung: Vertiefen/wiederholen von Themen, Problemlösen

  • Praktikum: Implementieren, testen, Performance messen und vergleichen



Exam(s)
Minor exam assessed assignment (confirmation of attendance)
Assessment Major oral exam 20 min 100.0%



Syllabus plan/Content:

  • Korrektheit von Algorithmen

  • Laufzeitanalyse von Algorithmen

  • Asymptotische Laufzeit, Landau-Notation

  • Standarddatenstrukturen wie z.B. verkettete Listen, dynamische Arrays, Hash-Tabellen

  • Cache-Freundlichkeit

  • Amortisierte Laufzeit

  • Laufzeit als Erwartungswert

  • Sortieralgorithmen

  • Dynamische Programmierung

  • Messen und Visualisieren von tatsächlichem Laufzeitverhalten im Praktikum




Learning Goals
Subject-specific skills and competences: Die Absolventen/-innen sind sich bewusst, dass Korrektheit und Effizienz sind Hauptziele der Algorithmik sind.
Sie verstehen die wichtigsten etablierten Algorithmen und Datenstrukturen und kennen deren Ressourcenbedarf.
Sie können algorithmische Probleme in verschiedenen Anwendungskontexten identifizieren, einigermaßen effizient lösen und verwenden dabei gewohnheitsmäßig Standardbibliotheken. Darauf aufbauend identifizieren sie den algorithmischen Kern einer Problemstellung und entwerfen zielgerichtet Datenstrukturen und Algorithmen, in geeigneten Notationen.
Die Absolventen/-innen können den Resourcenbedarf einer solchen Lösung ausreichend gut einschätzen.
Zudem bewerten sie verschiedene Lösungsalternativen kritisch, treffen fundierte Entscheidungen und setzen diese tatkräftig um. In dem Zusammenhang analysieren die Absolventen/-innen offene Fragestellungen durch gezielte Experimente.

Ferner verfügen die Absolventen/-innen über die Kompetenz, verschiedene Werkzeuge zur Text- und Literaturarbeit sowie zur Visualisierung wissenschaftlicher Daten effektiv zu nutzen.
Dies befähigt sie, umfassende Recherchen durchzuführen und wissenschaftliche Arbeiten zu erstellen, die den Anforderungen an Gestaltung, Gliederung und einen präzisen Sprachstil gerecht werden.
Generic competences (Personal and key skills): Die Absolventen/-innen haben Erfahrung mit selbständigem Arbeiten an einem Problem und der Implementieren klar definierter Interfaces.
Die Absolventen/-innen haben Erfahrung mit dem Aufnehmen und Visualisieren von Messergebnissen, einem wichtigen Werkzeug zum Treffen faktenbasierter Entscheidungen im Berufsleben.

Prerequisites: keine
Optional:

  • Grundlegende mathematische Fähigkeiten, vor allem Beweis durch vollständige Induktion und Wahrscheinlichkeitsrechnung

  • Grundlegende Erfahrung mit imperativem Programmieren, vor allem if-else-Konstrukten, sowie for- und while-Schleifen


Literature:

  • M. Dietzfelbinger, K. Mehlhorn, P. Sanders,
    „Algorithmen und Datenstrukturen – Die Grundwerkzeuge“,
    Springer, 2014

  • T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein
    „Introduction to algorithms“,
    The MIT Press, Third edition, 2009