Algorithmen und Datenstrukturen

Praktische Einführung und Programmierung

Stefan Bosse

Universität Koblenz - FB Informatik

1 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick ::

Überblick

2 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Mitarbeiter

Mitarbeiter

  1. Prof. Dr. Stefan Bosse, Praktische Informatik (Vorlesung und Übung)

    • Verteilte Künstliche Intelligenz & Sensornetzwerke
    • Betriebssysteme & Virtualisierung
    • Technische Systeme
  2. WiMi Sidar Cilinc (Übung)

    • AG Praktische Informarik
  3. HiWi Valerie Simon, Elena XX (Übung)

3 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Aufbau der Veranstaltung

Aufbau der Veranstaltung

  1. Vorlesungen

    • Mittwoch 10-12 Uhr (Hauptstrang, Grundlagen)
    • Donnerstag 12-14 Uhr (Nebenstrang, Besondere Themen, wie z.B. Numerik)
  2. Übungen

    • Dienstags 14-16 Uhr
    • Donnerstags 14-16 Uhr
    • Freitags 10-12 Uhr
4 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Übungsformat

Übungsformat

Notebooks: Alle Übungen sind digital und werden im Web Browser bearbeitet (lokal, ggfs. off-line). Die Inhalte einer Übungseinheit werden als Datei im JSON Format gespeichert und hochgeladen.

  • Es sollen die Datenstrukturen und Algorithmen dieses Kurses in Java (Ver. 7) implementiert und profiliert werden.

    • Profilieren bedeutet: Bestimmung der Rechenzeit für eine Problemgröße, die Anzahl der ausgeführten VM Instruktionen, deren Art und Verteilung, und Untersuchung des Speicherbedarfs.
    • Es wird eine dafür entwickelte Mikro VM (uJ) verwendet die alle nötigen Informationen für das Profiling liefert.
  • In der Vorlesung wird i.A. nur eine Pseudonotation für Algorithmik und Datenstrukturen verwendet.

5 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Übungsformat

Übungsformat

+

6 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Leistungskriterien

Leistungskriterien

  1. Übungen

    • Bearbeitung der Übungseinheiten in Einzelarbeit (in Gruppe), alle Abgaben!
    • Abgabe des Übungszettels in digitaler Form als Gruppe (JSON Datei)
    • Programmierung in Java
    • Bewertungsschema 0/1/2
    • Musterlösungen sind in den digitalen Zetteln enthalten und werden mit einem Schlüssel freigeschaltet (gibt es im Tutorium).
  2. Klausur

    • 60-90 Minuten
    • Vor allem Abfrage von Wissen und Verständnis
    • "Programmierung" der Algorithmen und Beschreibung nur in Pseudonotation (standardisiert für diesen Kurs)
7 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Veranstaltungsformat

Veranstaltungsformat

  • größtenteils in Präsenz

  • Videos mit Nachbesprechung oder als Ergänzung zu Übungen

  • evtl. gelegentlich On-line (Video Meeting)

Für alle die Terminkonflikte haben wird die Veranstaltung tagesaktuell aufgezeichnet und steht On-line zum Abruf.

8 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Veranstaltungsformat

Veranstaltungsformat

  • größtenteils in Präsenz

  • Videos mit Nachbesprechung oder als Ergänzung zu Übungen

  • evtl. gelegentlich On-line (Video Meeting)

Für alle die Terminkonflikte haben wird die Veranstaltung tagesaktuell aufgezeichnet und steht On-line zum Abruf.

Alle Dokumente, Videos, und Übungen gibt es hier: https://edu-9.de/Lehre/ad1k.

9 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Inhalte

Inhalte

  1. Einführung in Komplexität und Effizienz, Grundlagen
  2. Darstellung von Algorithmen: Diagramme und Pseudonotation
  3. Numerische Algorithmen
  4. Abstrakte Datentypen
  5. Arrays und Tabellen
  6. Datenbanken und Datenorgansation
  7. Sortierverfahren (für geordnete Daten)
  8. Mengen: Ungeordnete Daten
  9. Warteschlange und Stapelspeicher
  10. Listen
  11. Bäume
  12. Graphen
10 / 19

Stefan Bosse - Algorithmen und Datenstrukturen - Modul 0 Überblick :: Literatur

Literatur

Algorithmen und Datenstrukturen
Thomas Ottman
Peter Widmayer
Spektrum Verlag

Algorithmen und Datenstrukturen
Eine Einführung in Java
Gunter Saake, Kai Uwe Sattler
dpunkt Verlag