Syllabus

Title
1756 Algorithmisches Denken und Programmierung
Instructors
Assoz.Prof PD Dr. Stefan Sobernig
Contact details
Type
VUE
Weekly hours
2
Language of instruction
Deutsch
Registration
09/01/22 to 10/10/22
Registration via LPIS
Notes to the course
Dates
Day Date Time Room
Monday 10/24/22 12:30 PM - 03:00 PM TC.2.02
Monday 10/31/22 12:30 PM - 03:00 PM TC.2.02
Monday 11/07/22 01:00 PM - 03:30 PM TC.4.03
Monday 11/14/22 01:00 PM - 03:30 PM TC.4.03
Monday 11/28/22 01:00 PM - 03:30 PM TC.4.03
Monday 12/05/22 01:00 PM - 03:30 PM TC.4.03
Monday 12/12/22 01:00 PM - 03:30 PM TC.4.03
Monday 12/19/22 01:00 PM - 03:30 PM TC.4.03
Monday 01/09/23 01:00 PM - 03:30 PM TC.4.03
Monday 01/16/23 01:00 PM - 03:30 PM TC.4.03
Friday 01/20/23 12:30 PM - 02:00 PM Online-Einheit
Monday 01/23/23 10:00 AM - 12:00 PM D2.-1.019 Workstation-Raum
Friday 01/27/23 10:00 AM - 06:00 PM D2.0.020
Contents

Grundlagen der Programmierung:

  • Variablen, Datentypen und Operatoren 
  • Kontrollstrukturen und Schleifen 
  • Zeichenketten

Algorithmische Grundkonzepte:

  • Notation und Analyse von Algorithmen
  • Notation von Datenstrukturen
  • Komplexitätsanalyse 

Suchen und Sortieren:

  • Ausgewählte Algorithmen
  • Analyse von Such- und Sortierverfahren

Rekursion:

  • Ausgewählte rekursive Algorithmen
  • Rekursive/ dynamische Datentypen

Baumstrukturen:

  • Begriffe und Konzepte
  • Binäre Bäume
  • Ausgewählte Algorithmen (Traversierung, Suche, Einfügen und Löschen)

Hashverfahren:

  • Grundlagen und Verfahren
  • Kollisionen
  • Analyse von Hashverfahren
Learning outcomes

Theoretisches Grundverständnis:

  • Kenntnis der wichtigsten Grundkonzepte von Algorithmen.
  • Die Umsetzung dieser Konzepte in einer konkreten Programmiersprache.
  • Ausgewählte Algorithmen zur Lösung von grundlegenden Problemen der Informatik (z.B. Such- und Sortierverfahren), und deren Umsetzung in einer Programmiersprache. 

Analysieren und Verstehen von Algorithmen:

  • Die Fähigkeit, Algorithmen hinsichtlich ihrer Effizienz zu evaluieren und kritisch zu vergleichen;
  • von Dritten erstellte Programme zu erfassen, nachzuvollziehen und zu analysieren. 

Entwurf von Programmen:

  • Die Fähigkeit, grundlegende Algorithmen zur Lösung eines bestimmten Problems selbstständig zu formulieren, mit Hilfe
    • natürlicher Sprache,
    • eines Pseudocodes,
    • oder einer Programmiersprache.
Attendance requirements

Für Studien nach Studienplan 2019 (VUE Algorithmisches Denken und Programmierung)

  • Die Teilnahme an der Lehrveranstaltung ist grundsätzlich verpflichtend und wird kontrolliert (Anwesenheitsliste). Die Mindestanwesenheit zur Möglichkeit einer Beurteilung liegt bei 50% der Einheiten. Jede Abwesenheit muss rechtzeitig angezeigt und mit einem Abwesenheitsgrund belegt sein.
  • Die Teilnahme am ersten Termin sowie am Haupttermin der Prüfung sind für Studierende jedenfalls verpflichtend zu besuchen und von der oben genannten Ausnahme zur Anwesenheitspflicht ausgenommen.
  • Eine unbegründete und entschuldigte Abwesenheit in der ersten Einheit kann zum Verlust des Platzes führen.
  • Die Möglichkeit der Ersatzleistung für die Prüfung zum Nachtermin besteht nur, wenn der Haupttermin begründet und entschuldigt versäumt wurde.
  • Eine möglichst vollständige Teilnahme am Kurs wird auf jeden empfohlen zur Erreichung der Lernziele.

Für Studien nach Studienplan 2012 (LVP Grundzüge der Programmierung / Wahlfach Kurs I - Grundzüge der Programmierung und Modellierung)

  • Die Teilnahme an der Lehrveranstaltung Grundzüge der Programmierung ist nicht verpflichtend und wird auch nicht kontrolliert.
  • Ebenso findet auch keine Leistungsbeurteilung für die Teilnahme an diesem Kurs statt. Die Leistungsfeststellung für den entsprechenden Planpunkt erfolgt durch die entsprechende Lehrveranstaltungsprüfung (LVP).
  • Es wird die Möglichkeit geben, bis zu 10% Bonuspunkte für die LVP-Prüfung zu sammeln. Diese gelten nur bei Prüfungsantritt im aktuellen Semester. 
  • Eine Teilnahme am Kurs ist für Studierende somit nicht verpflichtend, jedoch zu empfehlen.
Teaching/learning method(s)

Der Kurs "Algorithmisches Denken und Programmierung" (ADP) ist in fünf inhaltliche Blöcke gegliedert:

  • Einführung: Grundlagen der Programmierung
  • Suchalgorithmen
  • Sortieralgorithmen und Datenstrukturen
  • Rekursion
  • Hashtabellen und Hashfunktionen

 

Die ersten fünf Blöcke bestehen jeweils aus zwei Bausteinen (Präsenzeinheit, Programmierlabor). Das Programmierlabor wird aktuell in Form von Onlineaktivitäten als Gruppenarbeiten abgehalten. Zusätzlich werden Lehrtutorien zur Handhabung der Programmierumgebung und Programmiersprache angeboten.

Assessment

ADP (VUE)

Die Programmierlabore bzw. Onlineaktivitäten  abgehalten werden, gelten als Teilleistungen neben der Abschlussprüfung.

Pflichtfach

  • Online-Aktivitäten + Abgaben: 40 Punkte
  • Abschlussprüfung (schriftlich mit mündlicher Nachbesprechung): 60 Punkte
  • Notenschlüssel:
    • Sehr Gut (1): 90 - 100
    • Gut (2): 76 - 89
    • Befriedigend (3): 63 - 75
    • Genügend (4): 50 - 62
    • Nicht Genügend (5): 0 - 49

Wahlfach

  • Online-Aktivitäten + Abgaben: 45 Punkte
  • Abschlussprüfung (schriftlich mit mündlicher Nachbesprechung): 75 Punkte
  • Notenschlüssel:
    • Sehr Gut (1): 108 - 120
    • Gut (2): 92 - 107
    • Befriedigend (3): 76 - 91
    • Genügend (4): 60 - 75
    • Nicht Genügend (5): 0 - 59

GZP (LVP)

Beim LVP-Modus basiert die Beurteilung ausschließlich auf einer schriftlichen Leistungsfeststellung (LVP) mit mündlicher Nachbesprechung mit insgesamt 60 bzw. 75 (Wahlfach) erreichbaren Punkten.

    • Die Anmeldung zur Prüfung ist unabhängig von der Anmeldung zur Vorlesung. Die Studierenden melden sich über LPIS-„Studienplan“ zur LVP-Prüfung an. 
    • Anmeldeschluss ist immer eine Woche vor der Prüfung um 23:59 Uhr.
    • Bei Fragen bezüglich der Prüfungsanmeldung wenden Sie sich bitte direkt an pruefungsorganisation@wu.ac.at
    • Es werden pro Semester 3 Prüfungstermine angeboten (in jeder Prüfungswoche):
      • 1. Prüfungstermin (computergestützt am Campus):
        • Schriftliche Prüfung: Mo. 3.10.2022, 10:00-12:00 
        • Mündliche Nachbesprechung: Fr. 7.10.2022, ab 10:00 (genaue Zeitvereinbarung erfolgt nach dem schriftlichen Teil);
      • 2. Prüfungstermin (computergestützt am Campus):
        • Schriftliche Prüfung: Mo. 21.11.2022, 10:00-12:00 
        • Mündliche Nachbesprechung: Fr. 25.11.2022, ab 10:00 (genaue Zeitvereinbarung erfolgt nach dem schriftlichen Teil);
      • 3. Prüfungstermin (im Distanzmodus bzw. computergestützt am Campus):
        • Schriftliche Prüfung: Mo. 23.1.2023, 10:00-12:00 
        • Mündliche Nachbesprechung: Fr. 27.01.2023, ab 10:00 (genaue Zeitvereinbarung erfolgt nach dem schriftlichen Teil);
    Prerequisites for participation and waiting lists

    siehe "Regelungen zur Anwesenheit"

    Readings
    1 Author: Gunter Saake, Kai-Uwe Sattler
    Title:

    Algorithmen und Datenstrukturen


    Publisher: dpunkt.verlag
    Edition: 5
    Remarks: Sh. https://permalink.obvsg.at/wuw/AC15572284
    Year: 2014
    Recommendation: Essential reading for all students
    Type: Book
    Last edited: 2022-10-14



    Back