- Nummer
- algd
- Leitung
- -
- ECTS
- 3.0
- Anspruchsniveau
- intermediate
- Inhaltsübersicht
Inhalt des Moduls ist das Studium einiger grundlegender Datenstrukturen mit darauf operierenden iterativen oder rekursiven Algorithmen sowie deren Eigen-schaften und daraus folgenden Trade-Offs.
- Partitionierung als Teilsortierung, Quicksort, Medianberechnung
- Linked Lists
- Baumstrukturen
- Heap, Priority Qeues
- Hash-Verfahren und Hash-Tables
- Datenstrukturen für Graphen
- Algorithmen auf Graphen
- Lernziele
Die Studierenden können grundlegende Datenstrukturen und darauf operierende Algorithmen benennen, sowie deren jeweiligen Eigenschaften, wie Speicher- und Laufzeitbedarf, erwartete Vorbedingungen und eingehaltene Nachbedingungen.
Sie verstehen die jeweiligen Strukturen und Funktionsweisen und können deren Zusammenspiel erklären, indem sie für konkrete Beispiele Datenstrukturen mit Zeichnungen o.ä. visualisieren und Algorithmen z.B. in Form einer Abfolge solcher Zeichnungen ausführen.
Sie können für konkrete Aufgaben geeignete Datenstrukturen und Algorithmen auswählen und ihre Wahl mit Qualitäts- und Laufzeiteigenschaften begründen oder eine Entscheidungsgrundlage anhand nachvollziehbarer Kriterien liefern.
Sie können in grösseren Programmen den Einsatz der studierten Datenstrukturen und Algorithmen erkennen und die Zweckmässigkeit anhand der Anforderungen im jeweiligen Kontext beurteilen.
Sie können für die Datenstrukturen und zugehörigen Algorithmen eigene effiziente Programme in Java konstruieren.
- Empfohlene Vorkenntnisse
Studienjahrgang HS 2025 oder später:
- Programmieren 1 (prog1)
Studienjahrgang FS 2025 oder früher:
- Algorithmen und Datenstrukturen 1 (algd1)
- Objektorientierte Programmierung 2 (oopI2)
- Leistungsbewertung
- Erfahrungsnote
- Zusatzinformationen
- Dieses Modul entspricht inhaltlich dem Modul algd2. Falls algd2 bereits bestanden, bzw. 2x nicht bestanden wurde, darf algd nicht mehr besucht werden.