Autumn Semester 2020 takes place in a mixed form of online and classroom teaching.
Please read the published information on the individual courses carefully.

Markus Püschel: Catalogue data in Autumn Semester 2018

Name Prof. Dr. Markus Püschel
FieldComputer Science
Address
Dep. Informatik
ETH Zürich, CAB H 69.3
Universitätstrasse 6
8092 Zürich
SWITZERLAND
Award: The Golden Owl
Telephone+41 44 632 73 03
E-mailpueschel@inf.ethz.ch
URLhttp://people.inf.ethz.ch/markusp/
DepartmentComputer Science
RelationshipFull Professor

NumberTitleECTSHoursLecturers
252-0026-00LAlgorithms and Data Structures Information 7 credits3V + 2U + 1AM. Püschel, D. Steurer
AbstractThis course is about fundamental algorithm design paradigms, classic algorithmic problems, and data structures. The connection between algorithms and data structures is explained for geometric and graph problems. For this purpose, fundamental graph theoretic concepts are introduced.
ObjectiveAn understanding of the design and analysis of fundamental algorithms and data structures.
ContentEs werden grundlegende Algorithmen und Datenstrukturen vorgestellt und analysiert. Dazu gehören auf der einen Seite Entwurfsmuster für Algorithmen, wie Induktion, divide-and-conquer, backtracking und dynamische Optimierung, ebenso wie klassische algorithmische Probleme, wie Suchen und Sortieren. Auf der anderen Seite werden Datenstrukturen für verschiedene Zwecke behandelt, darunter verkettete Listen, Hashtabellen, balancierte Suchbäume, verschiedene heaps und union-find-Strukturen. Weiterhin wird Adaptivität bei Datenstrukturen (wie etwa Splay-Bäume) und bei Algorithmen (wie etwa online-Algorithmen) beleuchtet. Das Zusammenspiel von Algorithmen und Datenstrukturen wird anhand von Geometrie- und Graphenproblemen illustriert. Hierfür werden grundlegende Konzepte der Graphentheorie eingeführt.
LiteratureTh. Ottmann, P.Widmayer: Algorithmen und Datenstrukturen, Spektrum-Verlag, 5. Auflage, Heidelberg, Berlin, Oxford, 2011
263-2800-00LDesign of Parallel and High-Performance Computing Information 7 credits3V + 2U + 1AT. Hoefler, M. Püschel
AbstractAdvanced topics in parallel / concurrent programming.
ObjectiveUnderstand concurrency paradigms and models from a higher perspective and acquire skills for designing, structuring and developing possibly large concurrent software systems. Become able to distinguish parallelism in problem space and in machine space. Become familiar with important technical concepts and with concurrency folklore.
263-2900-00LHow To Give Strong Technical Presentations Information
Does not take place this semester.
0 creditsM. Püschel
Abstract
ObjectiveWherever possible I illustrate by example and present the material in a way to make it immediately applicable. The goal is to provide the knowledge that enables the participants, whether beginner or experienced presenter, to further improve their presentation skills and hence their impact whenever they step in front of an audience.
ContentThis course covers all aspects of delivering strong presentations. I explain common mistakes, what works and what does not, and why. Then I discuss structure and content as well as a set of fundamental principles from graphic design that make slides communicate effectively. These principles also apply to the presentation and visualization of data which is covered in some detail. Finally, I give some useful tips on the use of Powerpoint that simplify the creation of strong presentations.