VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.
Abstract
Informatik II legt die Grundlage für das Verständnis, den Entwurf und die Analyse von Algorithmen und Datenstrukturen.Zudem gibt es einen Überblick von verschiedenen Programmierkonzepten, wie funktionale Programmierung und statische und dynamisch typisierte Programmiersprachen.
Objective
Verständnis des Entwurfs und der Analyse grundlegender Algorithmen und Datenstrukturen, Arbeiten mit mehrdimensionalen Daten mithilfe von Python-Bibliotheken, und Überblick von verschiedenen Programmierkonzepten
Content
Einführung von Python: von C++ zu Python, erweiterte Konzepte und integrierte Datenstrukturen in Python; Analysieren von Daten, Bearbeiten von Daten mit Numpy und Visualisieren mit Matplotlib; lineare Regression, Klassifikation und (k-Means) Clustering. Grundlegende Algorithmen und Datenstrukturen, Entwurfsmuster für Algorithmen (Induktion, Divide and Conquer, dynamische Programmierung), klassische algorithmische Probleme (Suchen und Sortieren), Datenstrukturen (Suchbäume, Heaps, Union-Find). Übungen werden in der Online-IDE und Übungsmanagementsystem Code-Expert durchgeführt.
Resources
Literature
Th. Ottmann, P. Widmayer: Algorithmen und Datenstrukturen, Spektrum-Verlag, 5. Auflage, Heidelberg, Berlin, Oxford, 2011 Thomas H. Cormen, Charles E. Leiserson, Ronald Rivest, Clifford Stein: Algorithmen - Eine Einführung, Oldenbourg, 2010