Algorithms, Probability, and Computing (2025)
Lecturers: |
Rasmus Kyng (OAT Z21.1), Bernd Gärtner (OAT Z15), David Steurer (OAT Z22.2), |
---|---|
Assistants: |
Simon Meierhans (Head TA, OAT Z21.2) Aurelio Sulser (OAT Z21.2) Weixuan Yuan (OAT Z19.2) Gernot Zöcklein Selman Eroglu Michal Stawarz |
Moodle: | We use Moodle in this course. Please check the Moodle page regularly. |
Lectures: |
Mon 14-16, ML D 28, Tue 14-16, ML D 28 |
Exercise: |
|
Credit Points: | 8CP for Informatik Bachelor and Mathematik Bachelor (252-0209-00L, 4V + 2U + 1A) |
Language: | English |
Contents: |
Advanced design and analysis methods for algorithms and data structures.
Preliminary list of topics:
|
Literature: |
Lecture Notes
The following textbooks do not cover all topics of the course (neither is every topic treated in these
textbooks a topic of the course).
|
Prerequisites: | Familiarity with basic notions of probability theory, cf. the course Algorithmen und Wahrscheinlichkeit. In particular, you should have a good understanding of the notions mentioned in the help sheet for the exam of that course. See also Basics of Probabilistic Analysis for the APC-Lecture and an interactive version of it. |
Exams, Special Assignments and Grading
There will be an optional written midterm exam and a written final exam. Script or any other supplementary material for either exam is not permitted. Furthermore, we will hand out two special assignments (compulsory continuous performance assessment) whose solution (typeset in LaTeX) is due two weeks later and will be graded.
The final grade is 20% midterm exam + 20% special assignments + 60% final exam
OR if the result of the midterm exam does not improve the final grade or has not been sitted: 20% special assignments + 80% final exam.Special Assignment 1: | Oct 14 - Oct 28. |
---|---|
Midterm Exam: | No written material will be permitted. You may find previous midterms here: 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023. 2024. |
Special Assignment 2: | Nov 18 - Dec 2. |
Final exam: | No written material will be permitted. You may find previous finals here: 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023. 2024. |
Absence. If there are compelling reasons why you cannot hand in a special assignment on the due date foreseen, please contact us post-haste and we can look for a solution. Note, however, that we will grant requests of this type only in very exceptional cases (doctor's note, military service, funeral, etc.). Private events (vacation, sports, career fairs, etc.) are never sufficient grounds. As far as special assignments are concerned, you can hand them in to the contact assistant by email at any time before the due date, so there is no need to be present in person. As regards the final exam, ETH regulations apply.
Exchange students. Exchange students enrolled for APC in fall might want to return to their home university prior to the date of the final exam. If this applies to you and you nonetheless wish to be evaluated and given credits for APC, then please take a look at the following website for current regulations.
Regular Exercises
Regular exercises are made available online on a weekly basis. Students are expected to (try and) solve the problems and attend the exercise classes. Your assistant is happy to look at your solutions and correct/comment them. All exercises and their solutions are part of the material relevant for the two exams.
Schedule
In the table below you can find the lecture dates and the preliminary topics. The exercises and their solutions will be published here.
Calendar Week | Date | Topic | Exercises and SPAs (by due date) |
Solutions |
---|---|---|---|---|
38 | Mon 15.9.25 |
No class. As a preparation to this week's exercises, please read Basics of Probabilistic Analysis or go through this interactive version of it. | ||
Tue 16.9.25 |
Bootstrapping Techniques: MST (1.1) | |||
39 | Mon 22.9.25 |
Bootstrapping Techniques: MinCut (1.2) | ||
Tue 23.9.25 |
(Random) Search Trees (2.1, 2.2) | |||
40 | Mon 29.9.25 |
Random Search Trees (2.3-2.6) | ||
Tue 30.9.25 |
Random Search Trees: Treap (2.7) | |||
41 | Mon 6.10.25 |
Point Location (3.1, 3.2) | ||
Tue 7.10.25 |
Point Location (3.2 continued, up to page 65) | |||
42 | Mon 13.10.25 |
Point Location (3.2 continued, 3.3, 3.4 up to page 73) | ||
Tue 14.10.25 |
Point Location (3.4 continued), Linear Programming (4.1, 4.2 up to page 83) | |||
43 | Mon 20.10.25 |
Linear Programming (4.2 continued, 4.3) | ||
Tue 21.10.25 |
Linear Programming (4.4, 4.5) | |||
44 | Mon 27.10.25 |
Linear Programming (4.5 continued, 4.6) | ||
Tue 28.10.25 |
Linear Programming (4.6 continued) | |||
45 | Mon 3.11.25 |
Linear Programming (4.6 continued, 4.7) | ||
Tue 4.11.25 |
Linear Programming (4.8 - 4.10) | |||
46 | Mon 10.11.25 |
Midterm | ||
Tue 11.11.25 |
Randomized Algebraic Algorithms (5.1, 5.2) | |||
47 | Mon 17.11.25 |
Randomized Algebraic Algorithms (5.3, 5.4) | ||
Tue 18.11.25 |
Randomized Algebraic Algorithms (5.4 continued, 5.6) | |||
48 | Mon 24.11.25 |
Randomized Algebraic Algorithms (5.6 continued) | ||
Tue 25.11.25 |
Parallel Algorithms (6.1, 6.2) | |||
49 | Mon 1.12.25 |
Parallel Algorithms (6.2 continued, 6.3) | ||
Tue 2.12.25 |
Parallel Algorithms (6.3 continued, 6.4.1) | |||
50 | Mon 8.12.25 |
Parallel Algorithms (6.4.2) | ||
Tue 9.12.25 |
Parallel Algorithms (6.5, review of 6.1-6.5) | |||
51 | Mon 15.12.25 |
Parallel Algorithms (6.6) | ||
Tue 16.12.25 |
Parallel Algorithms (6.6 continued, note that 6.7 is not covered) |