Lehr- und Forschungseinheit für Datenbanksysteme
print


Breadcrumb Navigation


Content

Algorithmen und Datenstrukturen (SS 2018)

Aktuelles

  • Zur Klausur sind keine Hilfsmittel, also auch kein Taschenrechner zugelassen.
  • Die Raumaufteilung für die Klausur finden Sie unter dem Punkt "Klausur"
  • Wir suchen noch Tutoren für die Veranstaltung "Einführung in die Programmierung". Wenn Sie Interesse an der Lehre haben und Ihnen die Programmierung leicht gefallen ist, dann melden Sie sich doch bei uns: richter@dbs.ifi.lmu.de
  • Bitte melden Sie sich auf uniworx zur Klausur an.
  • Aufgrund des unsicheren Verkehrsbetriebes morgen (14.06.) entfällt die Globalübung.
  • Die Tutorien am Montag, 30.04.2018, fallen aus. Damit beginnt der Übungszyklus in Zukunft nach der Vorlesung. 
  • Die freiwillige Abgabe der Globalübung ist für die Fälle gedacht, in denen Sie eine alternative Lösung zur Musterlösung gefunden haben und gerne Feedback dazu hätten. Es ist nicht nötig, dass Sie uns noch einmal die Musterlösung in ähnlicher oder identischer Form präsentieren, Punkte gibt es in keinem Fall. In solchen Fällen werden wir keine Kommentare dazu geben. Nochmal der Ablauf zur Globalübung für die, die den Präsenzveranstaltungen fernbleiben:
    • Globalübung am Donnerstag, Vorrechnen der Lösungen.
    • Veröffentlichung einer Musterlösung bis Freitag.
    • Reflektieren über die Lösung bis Sonntag Abend.
    • Einreichen einer (Teil-)Lösung, falls Sie denken, Sie haben eine alternative oder bessere Lösung gefunden.

 

  • Umfang: 3+2 Semesterwochenstunden
  • Registrierung: UniWorX
  • Für: Studierende der Informatik, Medieninformatik und Bioinformatik im Bachelor-Studium

Termine und Ort

Veranstaltung Zeit Ort Beginn
Vorlesung Di, 8.30 - 11.00 Uhr Raum B 201 (HGB) 10.04.2018
Tutorium Do, 8.00 - 10.00 Uhr Raum A 140 (HGB) 19.04.2018
Übung 1 Mo, 14.00 - 16.00 Uhr Raum 220 (Amalienstr. 73A) 16.04.2018
Übung 2 Mo, 16.00 - 18.00 Uhr Raum 220 (Amalienstr. 73A) 16.04.2018
Übung 3 Mo, 16.00 - 18.00 Uhr Raum 218 (Amalienstr. 73A) 16.04.2018
Übung 4 Mo, 18.00 s.t. - 20.00 Uhr Raum 220 (Amalienstr. 73A) 16.04.2018
Übung 5 Di, 14.00 - 16.00 Uhr Raum 220 (Amalienstr. 73A) 17.04.2018
Übung 6 Di, 16.00 - 18.00 Uhr Raum 220 (Amalienstr. 73A) 17.04.2018
Übung 7 Di, 18.00 s.t. - 20.00 Uhr Raum 218 (Amalienstr. 73A) 17.04.2018
Übung 8 Do, 10.00 - 12.00 Uhr Raum 220 (Amalienstr. 73A) 19.04.2018
Übung 9 Do, 12.00 - 14.00 Uhr Raum 218 (Amalienstr. 73A) 19.04.2018
Übung 10 Fr, 12.00 - 14.00 Uhr Raum 220 (Amalienstr. 73A) 20.04.2018
Übung 11 Fr, 10.00 - 12.00 Uhr Raum 220 (Amalienstr. 73A) 20.04.2018
Übung 12 Mo, 14.00 - 16.00 Uhr Raum 218 (Amalienstr. 73A) 16.04.2018
Übung 13 Mo, 18.00 - 20.00 Uhr Raum 218 (Amalienstr. 73A) 16.04.2018
Übung 14 Mi, 12.00 - 14.00 Uhr Raum 220 (Amalienstr. 73A) 18.04.2018
Übung 15 Mi, 14.00 - 16.00 Uhr Raum 220 (Amalienstr. 73A) 18.04.2018
Übung 16 Mi, 16.00 - 18.00 Uhr Raum 220 (Amalienstr. 73A) 18.04.2018
Übung 17 Do, 18.00 - 20.00 Uhr Raum 218 (Amalienstr. 73A) 19.04.2018
Übung 18 Do, 12.00 - 14.00 Uhr Raum 220 (Amalienstr. 73A) 19.04.2018
Übung 19 Do, 10.00 - 12.00 Uhr Raum 218 (Amalienstr. 73A) 19.04.2018

Zeitplan und Material

VorlesungÜbung
DatumInhaltDatumAufgabenLösungen
10.04.2018

Organisatorisches

Grundlagen

- - -
17.04.2018 ab 16.04.2018

Tut01
Global 01

Tut01
Global 01

24.04.2018 Komplexität ab 23.04. Tut02
Global 02
Tut02
Global 02
01.05.2018 entfällt ab 02.05. Tut03
Global 03
Tut03
Global 03
08.05.2018 Sortieren ab 08.05. Tut04 Tut04
15.05.2018

Tut05
Global 04

Tut05
Global 04
22.05.2018 entfällt Tut06
Global 05
Global 05
sorting.py
Tut06
29.05.2018 Suchen Tut07 Tut07
05.06.2018 Tut08
Global06
Tut08
Global 06
12.06.2018 Tut09
Globalübung entfällt
Tut09
19.06.2018 Graphalgorithmen Tut10
Global07
Tut10
Global 07
Global 07-2
26.06.2018 Tut11
Global08
Global 08
Global 08-2
Global 08-3
Tut11-1, Tut11-2
03.07.2018 Algorithmische Paradigmen Tut12
Global09
Tut12
Global09

Global09Folien
10.07.2018 Global10
Tut13
Global10
Tut13

Inhalt

In der Vorlesung wird der Entwurf effizienter Algorithmen für die Bereiche Suchen, Sortieren sowie Graphmethoden behandelt. Besonderer Schwerpunkt liegt hierbei auf allgemeinen algorithmischen Techniken, wie etwa divide-and-conquer, lokal-optimierender Berechnung ("greedy methods"), backtracking, branch-and-bound sowie dynamischer Programmierung.

In den Übungen können Konzepte durch Java-Programmierbeispiele und -aufgaben vertieft werden. Daher werden Basiskenntnisse in Java-Programmierung empfohlen.

Klausur

23.07.2018, 16-18 Uhr. Die Hörsäle befinden sich alle im Hauptgebäude.

Raumaufteilung nach erstem Buchstaben des Nachnamens:

  • A 240 <-  A-Cu
  • B 101 <- Cv-I
  • A 140 <- J-Lind
  • B 201 <- Ling-Rode
  • M 218 <- Rodi-Te     
  • M 118 <- Th-Z

 

Sonstiges

Als Zusatzliteratur oder Nachschlagewerk können folgende Werke empfohlen werden:

  • Robert Sedgewick: Algorithmen in Java: Grundlagen, Datenstrukturen, Sortieren, Suchen. Teil 1-4 (Pearson Studium)
  • Thomas Ottmann, Peter Widmayer: Algorithmen und Datenstrukturen (Spektrum Lehrbuch)
  • Thomas H. Cormen et al.: Algorithmen - Eine Einführung (Oldenbourg)

Für Java-Anfänger außerdem empfehlenswert: