Datenstrukturen und Algorithmen
Wochenstunden: |
2 Vorlesung + 1 Übung |
Prüfungsart: | Klausur |
Frequenz: |
jährlich (Wintersemester) im Sommersemester nur Prüfung |
Klausurinhalte
Die Klausur behandelt generell alle Themen, die auch in der Vorlesung oder der Übung behandelt wurden. Nicht Prüfungsrelevant sind:
- Dynamische Programmierung
- Einfügen / Löschen / Rekonstruktion eines Rot-Schwarz Baumes. Jedoch soll die Rot-Schwarz Eigenschaft bekannt sein.
- Persistente Datenstrukturen
- Die genauen (wörtliche) Definitionen der Abstrakten Datentypen. Jedoch müssen die wichtigen Operationen auf den ADTs bekannt sein!
Wichtig: Es gibt keinen zweiten Klausurtermin im Wintersemester. Die nächste Klausur findet im Sommersemester statt.
Klausurüberblick
Termin: |
20. März 2017, 14 Uhr |
Ort: |
Welfenschloss
|
Dauer: | 90 Minuten |
Hilfsmittel: | Ein beidseitig beschriebenes / bedrucktes DIN A 4 Blatt. Papier und Stifte bitte mitbringen! |
Einsicht: | wird noch bekanntgegeben. |
Lernziele
Die Vorlesung bietet eine Einführung in die Konstruktion von Datenstrukturen und Algorithmen. Ziele sind das Kennenlernen und Vergleichen alternativer Implementierungen für abstrakte Datentypen, die Analyse der Korrektheit und des Zeit- und Speicherbedarfs und das Kennenlernen und Anwenden von Entwurfsparadigmen für Algorithmen
Übungbetrieb
Die Übungen sind für keinen Studiengang verpflichtend und zählen nicht als Studienleistung. Die Studienleistung wird mit dem Bestehen der Klausur erbracht. Der Übungsbetrieb ist eine Vorbereitung auf die Klausur und als solche ermöglicht er auch das Erlangen eines Klausurbonus. Dieser Bonus ist nur für die Klausuren im Wintersemester und das darauffolgenden Sommersemester anrechenbar.
Die Übung besteht aus einer großen Abgabe in der der praktische Umgang mit dem Stoff geübt wird. Material dazu finden Sie im StudIP. Bewertet wird die Leistung dann im persönlichen gespräch mit einer/m Tutor/in.
Stoffplan
Lineare Datentypen
- ADT Liste
- ADT Stack
- ADT Queue
Bäume
- Definition und Eigenschaften
- ADT Tree
- Sequentielle Darstellung
- Verkette Darstellung
Anwendungen für Bäume
- Prioritätswartenschlangen und Heaps
- Suchbäume
- AVL-Bäume
- Rot-Schwarz-Bäume
Graphen
- Definition und Eigenschaften
- Implementation von Graphen
- Knotendurchlauf
- Topologisches Sortieren
- Minimale Spannbäume
- Kurzeste Pfade in gerichteten Graphen
Datenstrukturen zur Darstellung von Mengen
- Implementation von Tabellen als lineare Listen
- Implementation von Tabellen als Suchbäume
- Implementation von Tabellen mit Zugriff über Hashfunktion
- B+-Bäume
Sortierung von Mengen
- Elementare Sortierverfahren
- Effektive Sortierverfahren für Felder
- Optimales Sortieren
- Sortieren mit linearer Komplexität