Angelika Steger: Catalogue data in Autumn Semester 2016
|Name||Prof. Dr. Angelika Steger|
|Field||Informatik (Theoretische Informatik)|
Inst. f. Theoretische Informatik
ETH Zürich, CAB G 37.2
|Telephone||+41 44 632 04 97|
|Fax||+41 44 632 13 99|
|252-0209-00L||Algorithms, Probability, and Computing||8 credits||4V + 2U + 1A||E. Welzl, M. Ghaffari, A. Steger, P. Widmayer|
|Abstract||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).|
|Objective||Studying and understanding of fundamental advanced concepts in algorithms, data structures and complexity theory.|
|Lecture notes||Will be handed out.|
|Literature||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.
|252-0417-00L||Randomized Algorithms and Probabilistic Methods||7 credits||3V + 2U + 1A||A. Steger, E. Welzl|
|Abstract||Las Vegas & Monte Carlo algorithms; inequalities of Markov, Chebyshev, Chernoff; negative correlation; Markov chains: convergence, rapidly mixing; generating functions; Examples include: min cut, median, balls and bins, routing in hypercubes, 3SAT, card shuffling, random walks|
|Objective||After this course students will know fundamental techniques from probabilistic combinatorics for designing randomized algorithms and will be able to apply them to solve typical problems in these areas.|
|Content||Randomized Algorithms are algorithms that "flip coins" to take certain decisions. This concept extends the classical model of deterministic algorithms and has become very popular and useful within the last twenty years. In many cases, randomized algorithms are faster, simpler or just more elegant than deterministic ones. In the course, we will discuss basic principles and techniques and derive from them a number of randomized methods for problems in different areas.|
|Literature||- Randomized Algorithms, Rajeev Motwani and Prabhakar Raghavan, Cambridge University Press (1995)|
- Probability and Computing, Michael Mitzenmacher and Eli Upfal, Cambridge University Press (2005)
|252-0851-00L||Algorithms and Complexity||4 credits||2V + 1U||A. Steger|
|Abstract||Introduction: RAM machine, data structures; Algorithms: sorting, median, matrix multiplication, shortest paths, minimal spanning trees; Paradigms: divide & conquer, dynamic programming, greedy algorithms; Data Structures: search trees, dictionaries, priority queues; Complexity Theory: P and NP, NP-completeness, Cook's theorem, reductions.|
|Objective||After this course students know some basic algorithms as well as underlying paradigms. They will be familiar|
with basic notions of complexity theory and can use them to classify problems.
|Content||Die Vorlesung behandelt den Entwurf und die Analyse von Algorithmen und Datenstrukturen. Die zentralen Themengebiete sind: Sortieralgorithmen, Effiziente Datenstrukturen, Algorithmen für Graphen und Netzwerke, Paradigmen des Algorithmenentwurfs, Klassen P und NP, NP-Vollständigkeit, Approximationsalgorithmen.|
|Lecture notes||Ja. Wird zu Beginn des Semesters verteilt.|
Does not take place this semester.
|4 credits||3P||A. Steger|
|Abstract||Solve programming problems from previous ACM Programming Contests (see http://acm.uva.es/problemset/); learn and use efficient programming methods and algorithms.|
|Objective||The objective of this course is to learn how to solve algorithmic problems given as descriptions in natural language, similar to those posed in ACM Programming Contests. This includes appropriate problem modeling, choice of suitable (combinatorial) algorithms, and their efficient implementation using C/C++ and the STL.|
|252-4202-00L||Seminar in Theoretical Computer Science||2 credits||2S||E. Welzl, B. Gärtner, M. Hoffmann, J. Lengler, A. Steger, B. Sudakov|
|Abstract||Presentation of recent publications in theoretical computer science, including results by diploma, masters and doctoral candidates.|
|Objective||The goal is to introduce students to current research, and to enable them to read, understand, and present scientific papers.|
|263-0006-00L||Algorithms Lab||6 credits||4P + 1A||A. Steger, E. Welzl, P. Widmayer|
|Abstract||Students learn how to solve algorithmic problems given by a textual description (understanding problem setting, finding appropriate modeling, choosing suitable algorithms, and implementing them). Knowledge of basic algorithms and data structures is assumed; more advanced material and usage of standard libraries for combinatorial algorithms are introduced in tutorials.|
|Objective||The objective of this course is to learn how to solve algorithmic problems given by a textual description. This includes appropriate problem modeling, choice of suitable (combinatorial) algorithms, and implementing them (using C/C++, STL, CGAL, and BGL).|
|Literature||T. Cormen, C. Leiserson, R. Rivest: Introduction to Algorithms, MIT Press, 1990.|
J. Hromkovic, Teubner: Theoretische Informatik, Springer, 2004 (English: Theoretical Computer Science, Springer 2003).
J. Kleinberg, É. Tardos: Algorithm Design, Addison Wesley, 2006.
H. R. Lewis, C. H. Papadimitriou: Elements of the Theory of Computation, Prentice Hall, 1998.
T. Ottmann, P. Widmayer: Algorithmen und Datenstrukturen, Spektrum, 2012.
R. Sedgewick: Algorithms in C++: Graph Algorithms, Addison-Wesley, 2001.