Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03406.jsonl.gz/1571

ECTS 3.0
Inhaltsübersicht
Das Modul Algorithmen und Datenstrukturen 2 baut auf dem Modul Algorithmen und Datenstrukturen 1 auf. Studentinnen und Studenten erhalten einen vertieften Einblick ins Design und in die Implementierung von zentralen dynamischen Datenstrukturen. Aufbauend auf diesen Datenstrukturen werden typische Anwendungen und Algorithmen vorgestellt.
- halbdynamische Datenstrukturen (ArrayList)
- Stack, Listen, Ringlisten, optional: Skip-Liste
- natürliche und ausgeglichene Binärbäume, Maps
- Heap und Prioritätswarteschlangen
- Hash-Verfahren und Hash-Funktionen
- Graphen und Graphenalgorithmen
Lernziele
- Die Studentinnen und Studenten kennen die wesentlichen (halb-) dynamischen Datenstrukturen (ArrayList, Stack, Listen, Bäume, Prioritätswarteschlangen, Maps), die in der Software-Entwicklung eingesetzt werden und können diese selber in Java implementieren.
- Sie kennen wichtige exemplarische Algorithmen zum Suchen und Sortieren von Daten in dynamischen Datenstrukturen und können diese in Java selber implementieren.
- Sie verstehen das Prinzip des Hashings, kennen geläufige Hash-Verfahren und können eigene, sinnvolle Hash-Funktionen formulieren.
- Sie kennen die zentrale Datenstruktur Graph und sind in der Lage, effiziente Graphen und Graphenalgorithmen der Problemstellung angepasst zu implementieren.
Empfohlene Vorkenntnisse
Leistungsbewertung
Erfahrungsnote und MSP schriftlich