David Steurer: Catalogue data in Autumn Semester 2021
|Prof. Dr. David Steurer
|Theoretical Computer Science
Professur Theoretische Informatik
ETH Zürich, OAT Z 22.2
|Algorithms and Data Structures
|3V + 2U + 1A
|M. Püschel, D. Steurer
|The course provides the foundation of the design and analysis of algorithms. The material is introduced using classical algorithmic problems including graph problems. The necessary basic introduction to graph theory is provided as part of this course.
|An understanding of the design and analysis of fundamental algorithms and data structures. A basic understanding of graph theory and several basic graph algorithms.
|This course is an introduction into the design and analysis of algorithms. On the one hand this includes classical algorithm design patterns including induction, divide-and-conquer and dynamic programming. We study these using classical example such as searching and sorting. On the other hand the course covers the interaction between algorithms and data structures including linked lists, search trees, heaps, and union-find structures. A particular focus are graph algorithms for shortest path and minimal spanning tree problems. We provide the necessary introduction into graph theory as part of this course.
|A complete script in German is under development. A complete draft is already available on the course website.
|Abgesehen vom Skript und Vorlesungsunterlagen empfehlen wir die folgenden Bücher als zusätzliches Nachschlagewerk.
Th. Ottmann, P. Widmayer: Algorithmen und Datenstrukturen, Spektrum-Verlag, 5. Auflage, Heidelberg, Berlin, Oxford, 2011
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein: An Introduction to Algorithms, 3rd edition, MIT Press, 2009
|Algorithms, Probability, and Computing
|4V + 2U + 1A
|B. Gärtner, M. Ghaffari, R. Kyng, A. Steger, D. Steurer
|Advanced design and analysis methods for algorithms and data structures: Random(ized) Search Trees, Point Location, Minimum Cut, Linear Programming, Randomized Algebraic Algorithms (matchings), Probabilistically Checkable Proofs (introduction).
|Studying and understanding of fundamental advanced concepts in algorithms, data structures and complexity theory.
|Will be handed out.
|Introduction to Algorithms by T. H. Cormen, C. E. Leiserson, R. L. Rivest;
Randomized Algorithms by R. Motwani und P. Raghavan;
Computational Geometry - Algorithms and Applications by M. de Berg, M. van Kreveld, M. Overmars, O. Schwarzkopf.
|Seminar in Theoretical Computer Science
|E. Welzl, B. Gärtner, M. Ghaffari, M. Hoffmann, J. Lengler, A. Steger, D. Steurer, B. Sudakov
|Presentation of recent publications in theoretical computer science, including results by diploma, masters and doctoral candidates.
|The goal is to introduce students to current research, and to enable them to read, understand, and present scientific papers.
|Prerequisites / Notice
|This seminar takes place as part of the joint research seminar of several theory groups. Intended participation is for students with excellent performance only. Formal restriction is: prior successful participation in a master level seminar in theoretical computer science.