Resources
Computers at the IT Department
Solvers for Discrete Satisfaction or Optimisation Problems
For each assignment there is information on what software resources are needed to complete the assignment.
Online Courses
- The Coursera on-line course Solving Algorithms for Discrete Optimization has lectures on mixed integer programming (MIP) and local search (SLS); see the advertisement for this course on YouTube.
Algorithms and Data Structures
VisuAlgo, visualising data structures and algorithms through animation, a project led by Steven Halim
Data Structure Visualizations by David Galles
Dictionary of Algorithms and Data Structures by Paul E. Black
Algorithms, a textbook by Robert Sedgewick and Kevin Wayne, fourth edition, published by Addison Wesley in 2011
The Stony Brook Algorithm Repository by Steven Skiena, based on his textbook The Algorithm Design Manual, third edition, published by Springer-Verlag in 2020
Algorithms, a textbook by Sanjoy Dasgupta, Christos Papadimitriou, and Umesh Vazirani, published by McGraw-Hill in 2007
Algorithm Design: Foundations, Analysis, and Internet Examples, a textbook by Michael T. Goodrich and Roberto Tamassia, published by John Wiley & Sons in 2001
Useful Links
Algebraic Dynamic Programming (ADP), a method to design and implement, tune, test, and teach dynamic programming algorithms
MathWorld, allegedly the web's most extensive mathematics resource
LaTeX
We highly recommend you learn or use LaTeX for typesetting your assignment reports and presentation slides in a professional way, but this is optional. The learning of LaTeX is outside your time budget for this course, but very well-invested as you will find out during the course or later. Here are some LaTeX resources:
Our provided skeleton reports also contain examples of all LaTeX commands you need for this course; from the command line (or with Emacs/Aquamacs), compile with
pdflatex(once or twice, depending on whether cross-references need to be recomputed), and runbibtexwhenever the bibliography was modifiedThe LaTeX wikibook: a gentle but thorough introduction
Don't know the LaTeX code for that mathematical symbol you need? Draw it by hand at Detexify, and the applet will find the code for you
clrscode4e (documentation) package for typesetting algorithms like in CLRS4
Recommended text editors: Emacs, Aquamacs, and share-editing via Overleaf; we strongly recommend not to use WYSIWYG editors for LaTeX like LyX
Last modified: Tue Feb 11 13:53:18 CET 2025