Courses

02282 Algorithms for Massive Data Sets, Spring 2025
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2025
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02110 Algorithms and Data Structures II, Fall 2024
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2024
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2024
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02110 Algorithms and Data Structures II, Fall 2023
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2023
DTU Compute MSc course. Joint with Inge Li Gørtz and Eva Rotenberg. [official description]

02105 Algorithms and Data Structures I, Spring 2023
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02289 Algorithmic Techniques for Modern Data Models, Fall 2022
DTU Compute MSc course. Joint with Inge Li Gørtz and Eva Rotenberg. [official description]

02110 Algorithms and Data Structures II, Fall 2022
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2022
DTU Compute MSc course. Joint with Inge Li Gørtz and Eva Rotenberg. [official description]

02105 Algorithms and Data Structures I, Spring 2022
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02967 Discrete Mathematics for Computer Science, Fall 2021
DTU Compute PhD course. Joint with Max Rishøj Pedersen and Inge Li Gørtz. [official description]

02289 Algorithmic Techniques for Modern Data Models, Fall 2021
DTU Compute MSc course. Joint with Inge Li Gørtz and Eva Rotenberg. [official description]

02807 Computational Tools for Data Science, Fall 2021
DTU Compute MSc course. Joint with Martin Holm Jensen and Inge Li Gørtz. [official description]

02110 Algorithms and Data Structures II, Fall 2021
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02972 Modern Topics in Algorithmic Complexity Theory, Spring 2021
DTU Compute PhD course. Joint with Teresa Anna Steiner and Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2021
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2021
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02289 Algorithmic Techniques for Modern Data Models, Fall 2020
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02807 Computational Tools for Data Science, Fall 2020
DTU Compute MSc course. Joint with Andrés Occhipinti Liberman and Inge Li Gørtz. [official description]

02110 Algorithms and Data Structures II, Fall 2020
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2020
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2020
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02326 Algorithms and Data Structures, Spring 2020
DTU Compute BEng course. Joint with Inge Li Gørtz. [official description]

02289 Algorithmic Techniques for Modern Data Models, Fall 2019
DTU Compute MSc course. Joint with Inge Li Gørtz and Eva Rotenberg. [official description]

02807 Computational Tools for Data Science, Fall 2019
DTU Compute MSc course. Joint with Patrick Hagge Cording and Inge Li Gørtz. [official description]

02110 Algorithms and Data Structures II, Fall 2019
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2019
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2019
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02326 Algorithms and Data Structures, Spring 2019
DTU Compute BEng course. Joint with Inge Li Gørtz. [official description]

02807 Computational Tools for Data Science, Fall 2018
DTU Compute MSc course. Joint with Inge Li Gørtz and Anders Roy Christiansen. [official description]

02110 Algorithms and Data Structures II, Fall 2018
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2018
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2018
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02326 Algorithms and Data Structures, Spring 2018
DTU Compute BEng course. Joint with Inge Li Gørtz. [official description]

02951 Compact Data Structures, Fall 2017
DTU Compute PhD course. Joint with Inge Li Gørtz and Nicola Prezza. [official description]

Big Data Business Innovation, Fall 2017
DTU Business and DTU Compute Executive education course. Joint with multiple teachers from academia and industry.

02110 Algorithms and Data Structures II, Fall 2017
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02282 Algorithms for Massive Data Sets, Spring 2017
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2017
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02326 Algorithms and Data Structures, Spring 2017
DTU Compute BEng course. Joint with Inge Li Gørtz. [official description]

Big Data Business Academy, Fall 2016
DTU Business and DTU Compute Executive education course. Joint with multiple teachers from academia and industry.

02110 Algorithms and Data Structures II, Fall 2016
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02106 Algorithms and Data Structures I, Summer 2016
DTU Compute BSc course. Repetition course for 02105 Algorithms and Data Structures I. [official description]

02339 Algorithms and Data Structures, Summer 2016
DTU Compute BEng course. Repetition course for 02326 Algorithms and Data Structures. [official description]

02282 Algorithms for Massive Data Sets, Spring 2016
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2016
DTU Compute BSc course. [official description]

02326 Algorithms and Data Structures, Spring 2016
DTU Compute BEng course. [official description]

02940 Algorithms and Data Structures for Compressed Data, Fall 2015
DTU Compute PhD course. Joint with Inge Li Gørtz, Hjalte Wedel Vildhøj, and Patrick Hagge Cording. [official description]

02110 Algorithms and Data Structures II, Fall 2015
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02106 Algorithms and Data Structures I, Summer 2015
DTU Compute BSc course. Repetition course for 02105 Algorithms and Data Structures I. [official description]

02339 Algorithms and Data Structures, Summer 2015
DTU Compute BEng course. Repetition course for 02326 Algorithms and Data Structures. [official description]

02933 Advanced Topics in String Matching, Spring 2015
DTU Compute PhD course. Joint with Inge Li Gørtz.

02282 Algorithms for Massive Data Sets, Spring 2015
DTU Compute MSc course. Joint with Inge Li Gørtz, Hjalte Wedel Vildhøj, and Patrick Hagge Cording. [official description]

02105 Algorithms and Data Structures I, Spring 2015
DTU Compute BSc course. [official description]

02326 Algorithms and Data Structures, Spring 2015
DTU Compute BEng course. [official description]

02110 Algorithms and Data Structures II, Fall 2014
DTU Compute MSc course. Joint with Inge Li Gørtz.

02282 Algorithms for Massive Data Sets, Spring 2014
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02105 Algorithms and Data Structures I, Spring 2014
DTU Compute BSc course. Joint with Inge Li Gørtz. [official description]

02326 Algorithms and Data Structures, Spring 2014
DTU Compute BEng course. Joint with Inge Li Gørtz. [official description]

02121 Introduction to Software Technology, Fall 2013
DTU Compute BSc course.

02282 Algorithms for Massive Data Sets, Spring 2013
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02908 Design of Approximation Algorithms, Fall 2012
DTU Compute PhD course. Joint with Inge Li Gørtz.

02121 Introduction to Software Techology, Fall 2012
DTU Compute BSc course.

02283 Algorithms for Massive Data Sets, Spring 2012
DTU Compute MSc course. Joint with Inge Li Gørtz. [official description]

02933 Advanced Topics in String Matching, Fall 2011
DTU Compute PhD course. Joint with Inge Li Gørtz.

02121 Introduction to Software Techology, Fall 2011
DTU Compute BSc course.

02283 Algorithms for Massive Data Sets, Spring 2011
DTU Compute MSc course. Joint with Inge Li Gørtz and Carsten Witt. [official description]

02122 Software Techology Project, Spring 2011
DTU Compute BSc course.

02121 Engineering Practice, Fall 2010
DTU Compute BSc course.

02283 Algorithms for Massive Data Sets, Spring 2010
DTU Compute MSc course. Joint with Inge Li Gørtz and Carsten Witt. [official description]

02122 Software Techology Project, Spring 2010
DTU Compute BSc course.

Advanced Algorithms, Fall 2008
ITU MSc course. Joint with Thore Husfeldt.

Advanced Algorithms, Fall 2007
ITU MSc course.

Advanced Algorithms, Fall 2006
ITU MSc course. Joint with Anna Pagh and Srinivasa Rao Satti.

Advanced Topics in String Algorithms, Fall 2005
ITU PhD course.

Advanced Algorithms, Fall 2005
ITU MSc course. Joint with Anna Pagh and Srinivasa Rao Satti.

Search Engine Project, Dec. 2004
ITU MSc course. 3-week project course. Joint with Bodil Biering and Søren Debois.

Search Engine Project, Dec. 2003
ITU MSc course. 3-week project course.

Search Engine Project, May 2003
ITU MSc course. 3-week project course. Joint with Nina Bohr.

Distributed Systems, Spring 2003
ITU MSc course. Joint with Christian Worm Mortensen.

Solutions to CLR(S)

Many years ago I wrote up some solutions to the exercises in the book Introduction to Algorithms by Cormen, Leiserson, Rivest (, and Stein). I did solutions for the first and second edition. Thanks to the many people who have sent me corrections and suggestions.