Ablauf

Die dreistündige Vorlesung und die einstündige Übung Algorithmen und Datenstrukturen sind Bestandteil des Pflichtmoduls PI.ADS Algorithmen und Datenstrukturen des Bachelorstudiums Informatik. 
 
Die TeilnehmerInnen sollen die grundlegenden Algorithmen und Datenstrukturen kennenlernen und darüber hinaus in die Lage versetzt werden, die Komplexität und Qualität von Algorithmen und deren Implementierung zu bewerten. 
 
Die Vorlesung Algorithmen und Datenstrukturen führt die grundlegenden Algorithmen und Datenstrukturen vor. Der vorgetragene Stoff bildet die Grundlage für die in den Übungen praktisch auszuarbeitenden Beispiele. 
 
Die Vorlesung behandelt folgende Themenschwerpunkte: 
 
  1. Aufwandsabschätzungen 
  2. Komplexitätsmaße 
  3. Grundlegende Datenstrukturen 
  4. Such- und Sortierverfahren 
  5. Grundlegende Graph- und Optimierungsalgorithmen 
 
Die Übung Algorithmen und Datenstrukturen wird in zwei Teilen durchgeführt: 
 
  1. Vortrag zu fortgeschrittenen Themen der Programmierung in C++ 
    In den ersten vier Wochen des Semesters (10.3.-31.3.) werden in den jeweiligen Übungsgruppen Programmierkonzepte vorgetragen, deren Kenntnis für das nachfolgende Projekt notwendig ist, die aber nicht Teil der Lehrveranstaltung «Einführung in die Programmierung» sind. Das sind im Wesentlichen: 
    • Vererbung 
    • Funktoren 
    • Exceptions (Wiederholung und Vertiefung) 
       
  2. Projekt 
    Ziel des Projekts ist die Implementierung einer der in der Vorlesung behandelten Datenstrukturen und eines Sortierverfahrens. Die Zuteilung der zu implementierenden Datenstrukturen und Sortierverfahren (Themen) zu den einzelnen Studierenden erfolgt zufällig am Beginn des Semesters. Studierende, die eine besondere Herausforderung suchen, können statt des zugeteilten Themas auch die Implementierung eines B+-Baumes durchführen (dies ist mit dem LV-Leiter entsprechend abzuklären). Das Projekt wird im Anschluss an den Theoriekurs als Einzelarbeit durchgeführt und beginnt mit einem schriftlichen Test über die jeweils zugeteilte Datenstruktur (Einfügen, Suchen und Löschen anhand praktischer Fallbeispiele), sowie über den Stoff des vorangegangenen Theoriekurses. Das Projekt selbst gliedert sich in drei Phasen: 
     
    1. Erste Implementierung einer Datenstruktur (Einfügen und Suchen) 
    2. Vollständige Implementierung (inklusive Löschen und Sortieren) 
    3. Vergleich mit den Implementierungen anderer Studierender und Optimierungen 
Für jede Phase wird ein Abgabetermin festgelegt. Die Liste der gültigen Termine findet sich auf dieser Seite unter dem Tab Termine.
 
Für die Übung werden grundlegende Kenntnisse der objektorientierten Programmierung (im speziellen in C++) vorausgesetzt (i.e. die Inhalte der Lehrveranstaltung «Einführung in die Programmierung»). 
 

Leistungsbeurteilung:

Über die Vorlesung wird eine schriftliche Einzelprüfung abgelegt. Die Prüfungstermine können über das PISWI abgerufen werden, wobei auch die Anmeldung zu den Prüfungen über das PISWI erfolgen muss. «Alte Prüfungsangaben» sind online verfügbar. 
 
Für den erfolgreichen Abschluss der Übung sind zumindest 50 von 100 möglichen Punkten zu erreichen. Die Punkte werden wie folgt vergeben: 
 
Notenskala: 
 
Punkte
Note
>= 87,5
sehr gut (1)
>= 75
gut (2)
>= 62,5
befriedigend (3)
>= 50
genügend (4)
< 50
nicht genügend (5)
Letzte Änderung: 30.03.2009, 20:29 | 477 Worte