Hasso-Plattner-Institut25 Jahre HPI
Hasso-Plattner-Institut25 Jahre HPI
 

Einführung in die Programmiertechnik II (Sommersemester 2024)

Dozent: Prof. Dr. Ralf Herbrich (Artificial Intelligence and Sustainability) , Alexander Kastius (Artificial Intelligence and Sustainability)

Allgemeine Information

  • Semesterwochenstunden: 4
  • ECTS: 6
  • Benotet: Ja
  • Einschreibefrist: 01.04.2024 - 30.04.2023
  • Prüfungszeitpunkt §9 (4) BAMA-O: 30.07.2024
  • Lehrform: Vorlesung / Übung
  • Belegungsart: Pflichtmodul
  • Lehrsprache: Deutsch

Studiengänge, Modulgruppen & Module

IT-Systems Engineering BA

Beschreibung

Die Lehrveranstaltung bietet eine Einführung in die Programmierung von Algorithmen beginnend von algorithmischen Grundkonzepten und Paradigmen, Eigenschaften von Algorithmen sowie speziellen Algorithmenklassen wie Hashverfahren, Sortier- und Suchverfahren, Algorithmen für Bäume und Graphalgorithmen. Die Vorlesung benutzt die objektorientierte Programmiersprache C++.

Literatur

Lern- und Lehrformen

Übungen finden alle 2 Wochen zum Vorlesungstermin am Mittwoch statt. Zu den Übungen werden Übungsaufgaben ausgegeben (insgesamt 6 Serien). Diese sollen in Zweier-Gruppen bearbeitet werden. Für eine Zulassung zur Klausur ist der Erwerb von mindestens 50% aller Punkte über alle Übungsaufgaben erforderlich; jede Übgungsaufgabe muss aber erfolgreich die automatisierten Tests bestehen und eingereicht werden. Lösungen zu den Übungsaufgaben müssen über GitHub Classrooms eingereicht werden.

HPI Moodle Course: https://moodle.hpi.de/course/view.php?id=754

Leistungserfassung

Am Ende der Lehrveranstaltung wird eine Klausur geschrieben. Für eine Zulassung zur Klausur ist der Erwerb von mindestens 50% aller Punkte über alle Übungsaufgaben erforderlich, wobei Leerabgaben von Übungen nicht erlaubt sind. Als Leerabgabe gilt eine Abgabe ohne erkennbare Bearbeitung der Aufgaben. Die Übungsaufgaben werden mit Hilfe von GitHub Classrooms bearbeitet und eingereicht. Der letztmöglich Rücktrittszeitpunkt ist 7 Tage vor der Klausur.

Termine

  • Woche 1 (8.4 & 12.4): Überblick Algorithmen (Unit 1) & C++ Einführung (Unit 2a)
  • Woche 2 (15.4 & 19.4): & C++ Einführung (Unit 2a) & Übung 1
  • Woche 3 (22.4 & 26.4): Eigenschaften von Algorithmen (Unit 3a & b)
  • Woche 4 (29.4 & 3.5): Grundlegende Datentypen (Unit 4) & Übung 2
  • Woche 5 (6.5 & 10.5): Sortieren (Unit 5a & b)
  • Woche 6 (13.5 & 17.5): Sortieren (Unit 5c) & Übung 3
  • Woche 7 (24.5): Suchen (Unit 6) [Ausfall 20.5]
  • Woche 8 (27.5 & 31.5): Hashing (Unit 7) & Bäume (Unit 8a)
  • Woche 9 (3.6 & 7.6): & Bäume (Unit 8b) & Übung 4
  • Woche 10 (10.6 & 14.6): Bäume (Unit 8c) & Graphen (Unit 9a)
  • Woche 11 (17.6 & 21.6): Graphen (Unit 9b) & Übung 5
  • Woche 12 (24.6 & 28.6): Graphen (Unit 9c) & Algorithmenparadigmen (Unit 10a)
  • Woche 13 (1.7 & 5.7): Algorithmenparadigmen (Unit 10b) & Übung 6
  • Woche 14 (8.7 & 12.7): Klausurvorbereitung (Unit 11)

Zurück