Algorithmen und Datenstrukturen
Sommersemester 2020
Fabian Kuhn
Kursbeschreibung
Die Vorlesung widmet sich dem Entwurf und der Analyse von Algorithmen. Dabei werden die grundlegenden Algorithmen und Datenstrukturen besprochen. Unter anderem behandeln wir die folgenden Themen: Sortieren, Suchen, Hashtabellen, Suchbäume, (Prioritäts-)Warteschlangen, Graphenalgorithmen (z.B. kürzeste Wege, Spannbäume, Breiten- und Tiefensuche).
Ablauf der Vorlesungen
Die Vorlesung wird im Voraus aufgezeichnet und jeweils am Anfang der Woche auf folgender Website zur Verfügung gestellt:
Vorlesungsaufzeichnungen und -folien
Es wird zudem eine wöchentliche, interaktive Fragestunde geben. Der Termin ist immer am Dienstag von 10:15 bis 12:00 Uhr. Dafür wird das Konferenzsystem Zoom verwendet. Details zu den Zoom-Veranstaltungen finden Sie in der nachfolgenden Rubrik.
Klausur
Nachklausur
- Wie bereits im Forum erwähnt gibt es aktuell technische Schwierigkeiten bei der Veröffentlichung der Noten im HisInOne System. Das Prüfungsamt arbeitet daran. Update: Das Problem sollte inzwischen behoben sein.
- Zeit: Dauer: 180 min - Datum: 25.02.2021 - Klausurbeginn c.a. 9:00 Uhr (aufgrund der Einlassanforderungen ist es sinnvoll 20 Minuten früher vor Ort zu sein).
- Ort: Gebäude 101 auf dem Gelände der Technischen Fakultät. Wir werden Räume und Sitzplätze beim Einlass ins Gebäude zuweisen.
- Modus: Schriftlich und Open book. Letzteres bedeutet, dass alles auf Papier gedruckte oder geschriebene Material mitgebracht und benutzt werden darf. Elektronische Hilfsmittel sind nicht erlaubt!
- Erklärung bzgl. COVID-19: Vor Ort ist ein Erklärung über Ihren gesundheitlichen Status auszufüllen. Eine Kopie dieser Erklärung werden wir Ihnen an den Platz legen.
- Maßnahmen bzgl. COVID-19: Der Raum soll der Reihe nach mit 1,5m Mindestabstand zwischen Personen betreten werden. Sitzreihen sollen von hinten nach vorne aufgefüllt werden. Es besteht durchgängige Maskenpflicht (OP-Masken oder FFP2 oder äquivalent). Weitere Informationen finden Sie hier.
Hauptklausur
- Eine Musterlösung der Klausur finden Sie hier.
-
Weitere Einsichtstermine: Es werden nochmal zwei Termine für die Klausureinsicht angeboten:
- Mittwoch, 04.11., ab 14 Uhr. Bei Interesse bitte an philipp.bamberger at cs.uni-freiburg.de schreiben
- Freitag, 06.11., ab 14 Uhr. Bei Interesse bitte an philipp.schneider at cs.uni-freiburg.de schreiben
Die Einsicht wird aufgrund aktueller Entwicklungen online stattfinden. Dabei zeigen wir Ihnen per Screenshare einen Scan der korrigierten Klausur und Sie können Rückfragen und Beanstandungen bezüglich der Korrektur per Mikrofon oder Chat stellen. Bitte halten Sie ihren Studentenausweis bereit und zeigen Sie uns diesen mit Ihrer Kamera.
Details zu den Online-Veranstaltungen
Die notwendigen Daten für die Zoom-Meetings finden Sie auf dieser Website. Bitte beachten Sie dass dieser Link nur innerhalb des Uni-Netwerkes funtkioniert. Möchten Sie von außerhalb zugreifen können Sie einen VPN Tunnel benutzen. Alternativ sind die Daten auch im Forum verfügbar (es gibt einen entsprechenden Post im Bereich Ankündigungen).
Übungen
Die Übungen werden online mit dem Kursverwaltungssystem Daphne durchgeführt. Es wird dabei meist einen theoretischen Teil und einen praktischen Teil geben. Bitte beachten Sie die Richtlinien zur Abgabe (s.u.).
Hinweis: Abgabe der Übungsblätter ist stets um 16:00 Uhr!
Richtlinien zur Abgabe der Übungsblätter
Information zur Abgabe in Übungsgruppen: Eine gemeinsame Abgabe in Gruppen von bis zu drei Personen ist erlaubt. Um eine Übungsgruppe zu bilden, senden Sie bitte eine Mail an Philipp Bamberger mit dem Betreff AD-Gruppe, welche ausschließlich die RZ-Kürzel der Gruppenmitglieder enthält. Bitte beachten Sie, dass jedes Gruppenmitglied die Lösungen in seinen SVN-Ordner laden muss. Bitte teilen Sie zudem Ihrem Tutor in der file erfahrungen.txt Ihre Gruppenpartner mit.
Laden sie Ihre theoretischen und praktischen Lösungen immer in Ihr SVN Repository in einen Unterordner mit dem Namen uebungsblatt-XY wobei XY die aktuelle Nummer des Übungsblattes angibt (mit führender Null falls die Nummer einstellig ist)! Ihre praktischen Lösungen müssen direkt in uebungsblatt-XY hochgeladen werden (und nicht in einen weiteren unterordner) damit Jenkins diese findet. Nach der Deadline des entsrpechenden Übungsblattes XY sind keine Änderungen mehr am Unterordnet uebungsblatt-XY mehr möglich.
Laden Sie Ihre theoretischen Lösungen als (einzelnes) PDF in den entsprechenden Unterordner uebungsblatt-XY. Am liebsten sind uns theoretische Lösungen die mit Latex angefertigt wurden. Word oder andere Zeichensetzungsprogramme sind OK. Scans müssen gut lesbar sein, bitte vorher überprüfen!
Die hier verlinkte Übersicht beschreibt die typischen Schritte die Sie für die Abgabe der praktischen Lösung durchführen sollen.
Übungsklausuren
Hinweis: Die folgenden Klausuren stammen vom Kurs "Informatik 2" welcher ähnlich aber etwas umfangreicher war. Die Themen der Klausur "Algorithmen und Datenstrukturen" können leicht abweichen.
- Klausur Winter 2018/19
- Klausur Sommer 2018
- Klausur Winter 2016/17
- Die Aufzeichnung der Übungsklausurstunde 2020 (Klausur Winter 2016/17) sowie der dazugehörige Mitschrieb
- Klausur Sommer 2016
- Klausur Winter 2014/15
- Klausur Sommer 2014
Lehrmaterial
- Introduction to Algorithms (3rd edition); T. Cormen, C. Leiserson, R. Rivest, C. Stein; MIT Press, 2009
- Algorithmen und Datenstrukturen (5. Auflage); T. Ottmann und P. Widmayer; Spektrum Akademischer Verlag, Heidelberg, 2012
- Algorithms and Data Structures; K. Mehlhorn und P. Sanders; Springer, 2008, online verfügbar
- Links zu Vorlesungen mit Aufzeichnungen auf MIT Courseware:
Introduction to Algorithms 2005 und Introduction to Algorithms 2011