Algorithms and Data Structures 1 - Interactive curriculae of TU Ilmenau
The interactive curriculae provide information on the degree programmes offered by the TU Ilmenau.
Please refer to the respective study and examination rules and regulations for the legally binding curricula (Annex Curriculum).
You can find all details on planned lectures and classes in the course catalogue.
Please note that this page is no longer updated. All modules and study plans from PO version 2021 onwards (Bachelor and Master study programs) are now available on the Campus Portal.
| module properties Algorithms and Data Structures 1 in degree program Master Wirtschaftsinformatik 2021 | |
|---|---|
| module number | 200062 |
| examination number | 220445 |
| department | Department of Computer Science and Automation |
| ID of group | 2242 (Algorithms) |
| module leader | Prof. Dr. Christoph Berkholz |
| term | summer term only |
| language | Deutsch |
| credit points | 5 |
| on-campus program (h) | 45 |
| self-study (h) | 105 |
| obligation | elective module |
| exam | examination performance with multiple performances |
| details of the certificate | Das Modul Algorithmen und Datenstrukturen 1 mit der Prüfungsnummer 220445 schließt mit folgenden Leistungen ab:
Praktikum, mündliche Präsentation und Diskussion |
| link to Moodle course | https://moodle.tu-ilmenau.de/course/view.php?id=2848 |
| teacher | Berkholz |
| signup details for alternative examinations | |
| maximum number of participants | |
| previous knowledge and experience | Algorithmen und Programmierung Grundlagen und Diskrete Strukturen Mathematik 1 |
| learning outcome | Fachkompetenz: Die Studierenden kennen die Grundprinzipien des Algorithmenentwurfs und der Korrektheits- und Zeitanalyse von Algorithmen und Datenstrukturen. Die Studierenden kennen ein Verfahren für die Spezifikation von Datentypen und können dieses auf Beispiele anwenden. Sie kennen die O-Notation und ihre Regeln und können sie bei der Laufzeitanalyse benutzen. Die Studierenden kennen grundlegende Datenstrukturen über Spezifikation und Implementierungsmöglichkeiten und können die zentralen Perfomanzparameter benennen und begründen. Sie kennen fortgeschrittenere Datentypen wie "binärer Suchbaum" und Details der Implementierung als balancierter Suchbaum. Die Studierenden kennen das Prinzip und das Verhalten von einfachen Hashverfahren und können das zu erwartende Verhalten für die verschiedenen Verfahren beschreiben. Sie kennen Konstruktionen einfacher randomisierter Hashklassen und zugehörige Beweise. Die Studierenden kennen die grundlegenden Sortieralgorithmen (Quicksort, Heapsort, Mergesort sowie Radixsort), können die Korrektheit der Verfahren begründen und ihre Laufzeit berechnen. Sie kennen die untere Schranke für vergleichsbasierte Sortierverfahren sowie den grundlegenden Datentyp "Priority Queue" und seine Implementierung auf der Basis von binären Heaps. Die Studierenden kennen die Grundbegriffe der Graphentheorie, soweit sie algorithmisch relevant sind, und können mit ihnen umgehen. Sie kennen die wesentlichen Datenstrukturen für die Darstellung von Graphen und Digraphen mit den zugehörigen Methoden und Performanzparametern. Im Praktikum konnten die Studierenden konkrete Erfahrungen mit dem essentiellen Schritt von theoretisch entworfenen und analysierten Algorithmen zur praktischen Implementierung und experimentellen Evaluation machen. Das Praktikum führt in den Umgang mit einer zweiten Programmiersprache (C++) ein und führt zur grundlegenden Beherrschung dieser Sprache in Lesen und Verwendung. Die Studierenden können in diesem Aufgabenfeld selbst entwickelte Vorgehensweisen und eigene Erkenntnisse im Gespräch darstellen. Methodenkompetenz: Die Studierenden beherrschen Techniken zur Beschreibung von einfachen Systemen (Datentypen) und Verfahren (Algorithmen) sowie zur Beschreibung des Laufzeitverhaltens (O-Notation). Sie verstehen den Sinn von Korrektheitsbeweisen und beherrschen die grundlegenden Techniken für solche Beweise und für Laufzeitanalysen. Sie verstehen die Bedeutung der Effizienz bei der Implementierung von Algorithmen und Datenstrukturen. Sozialkompetenz: Die Studierenden haben die
Erfahrung gemacht, dass zur Erreichung des Ziels der Vorlesung die Herstellung
einer gemeinsamen konzentrierten Arbeitsatmosphäre wesentlich ist.
Diskussionsbeiträge und Fragen werden von den Lehrenden und den
Studierenden immer begrüßt. Die Studierenden können sich aktiv und interagierend an der Diskussion der Lösung der Übungsaufgaben in der Übung beteiligen. Sie sind fähig zu erkennen, dass unterschiedliche Herangehensweisen zum Ziel führen können, im Rahmen der mathematischen Regeln und des Standes der Kunst. Im Praktikum konnte die Kombination eigener Bemühungen mit der Annahme von unterstützender Beratung vom Tutor eingeübt werden. Die Studierenden erkennen, dass es sich lohnt, theoretische Ergebnisse der Vorlesung im Experiment zu hinterfragen und haben den Wert unterschiedlicher Perspektiven auf einen Sachverhalt erfahren. |
| content |
|
| media of instruction and technical requirements for education and examination in case of online participation | Vorlesung: Tafel, Folienprojektion, Folien und Skript im Moodlekurs Übung: Tafel, Studierende präsentieren Lösungen, Entwicklung von Lösungen im Dialog Praktikum: Programmieraufgaben, eigenständig zu lösen in dedizierter Programmierumgebung |
| literature / references | Das Standardwerk (für AuD1, AuD2 und darüber hinaus): T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms, 3rd ed., MIT Press, 2009 (auch auf deutsch bei Oldenbourg) Weitere Lehrbücher:
|
| evaluation of teaching | |

