Teachers
Teaching Assistants
When and where Fridays 8.15-12.00 in Bldg. 421, Aud. 73.
Prerequisites Undergraduate level courses in algorithms and data structures (comparable to 02105 + 02110) and mathematical maturity. You should have a working knowledge of algorithm analysis (e.g. asymptotic notation, worst case analysis, amortized analysis, basic analysis of randomized algorithms), data structures (e.g. trees, heaps, priority queues, hash tables, balanced binary search trees), graph algorithms (e.g. BFS, DFS, single source shortest paths, minimum spanning trees, topological sorting), dynamic programming, divide-and-conquer, and NP-completeness (e.g. basic reductions).
The weekplan is preliminary. It will be updated during the course. Under each week there is a number of suggestions for reading material regarding that weeks lecture. It is not the intention that you read all of the papers. It is a list of papers and notes where you can read about the subject discussed at the lecture.
Week | Topics | Teacher | Slides | Weekplans | Materials |
---|---|---|---|---|---|
Hashing | Eva | 1x1 | Hashing |
|
|
Streaming I: Introduction, majority, Misra-Gries, Approx counting. |
Inge | 1x1 · 4x1 | Streaming I | ||
Streaming II: Approximate Counting and Frequency estimation. |
Eva | 1x1 | Streaming II |
|
|
Approximate Data Structures I: Bloom filters. | Inge | Bloom Filters |
|
||
Approximate Data Structures II: Distance Oracles | Eva | Distance Oracles |
|
||
Streaming III: Sketching, CountMin sketch. |
Inge | 1x1 · 4x1 | Streaming III |
|
|
Approximate Data Structures III: Approximate Near Neighbor Search (Locality Sensitive Hashing) | Inge | 1x1 · 4x1 | LSH |
|
|
Distributed Computing I: | Eva | 1x1 | da1 |
|
|
Distributed Computing II: | Eva | 1x1 (v.2021) 1x1 (v.2020) | da2 |
|
|
Distributed Computing III: | Eva | da 3 | We read: Linial's Lower Bound Made Easy" by Laurinharju and Soumela (Podc'14) and Sinkless Orientation Made Simple by Balliu et al (Sosa'23) | ||
Massively Parallel Computing | Eva | 1x1 · 4x1 | mpc |
|
|
Massively Parallel 2: spanning trees | Eva | 1x1 | Massively Parallel Algorithms, M. Ghaffari, 2019, Chapter 3 (Graph sketching, connectivity). | ||
Course Roundup, Questions, Future Perspectives | Eva & Inge | N/A | N/A | Note: class starts 9:15. |
How can I access the listed reading material? Why are some of the links are behind a paywall? We typically link to material using standard doi's or publication venue links. We do this since these are stable over time and allow you to uniquely identify the material. To access these (at no cost) you sometimes need to use academic search engines or library services provided by DTU. Ask your teacher if you are unfamiliar with how to use these tools.
What do I do if I want to do a MSc/BSc thesis or project in Algorithms? Great! Algorithms is an excellent topic, and our algorithms courses are designed to prepare you to write a strong thesis. Some basic tips and points.