There is an overwhelming number of useful algorithms resources on the web. Although the class textbooks, and supplementary notes posted (hopefully) contain everything you need to do well in this course, we strongly encourage you to consult any other source at your disposal.
- Course material
- Lecture notes, slides, homeworks, and exams from algorithms classes at UIUC and several other universities can be found on the web:
Videos of algorithms lectures from several universities can be found on the web. See especially the following:
Both Coursera and Udacity are offering complete algorithms courses, with videos, readings, and automatically graded exercises. By necessity, these courses tend to focus more on implementation and less on proofs and open-ended design than CS 473.
- Algorithms: Design and Analysis taught by Tim Roughgarden, loosely based on algorithms classes at Stanford
- Algorithms, taught by Robert Sedgwick and Kevin Wayne, loosely based on algorithms classes at Princeton
- Part 1 (August–September 2013)
- Part 2 (November–December 2013)
- Analysis of Algorithms, taught by Robert Sedgwick, loosely based on a more advanced class at Princeton.
- Algorithms, taught by Michael Littman, loosely based on algorithms classes at Rutgers (self-paced)
- Intro to Theoretical Computer Science, taught by Sebastian Wernicke (self-paced)
- Algorithms, compiled by Bhanu Kapoor. Included for completeness, but good only for review of the most basic material.
- Copies of these books should be on reserve in Grainger. The first two are available online and will be most closely related to the presentation of the material in this course.
Automata and Computability by Dexter Kozen.
Algorithms by Sanjoy Dasgupta, Christos Papdimitriou, and Umesh Vazirani.
Algorithm Design by Jon Kleinberg and Éva Tardos (Addison-Wesley, 2005). Based on algorithms classes at Cornell. This is the standard recommended textbook for CS 573.
Introduction to Algorithms (3rd edition) by Thomas H. Cormen, Charles Leiserson, Ronald L. Rivest, and Clifford Stein (MIT Press/McGraw-Hill, 2009). Based on algorithms classes at MIT. The first and second editions are also fine. A significant fraction of this book has been transcribed into Wikipedia.
Algorithms (5th edition) by Robert Sedgewick and Kevin Wayne (Addison-Wesley, 2011). Based on algorithms classes at Princeton. This book doesn't cover everything in CS 473, but what it does cover it covers well; older editions are also fine. A crippled electronic version is available through the University library.
- For review of prerequisite material, we strongly recommend the following online resources. (This stuff is also covered in several dead-tree textbooks, but really, why bother?)
- Programming contests
- ...which (at least at the top levels) are really algorithm design contests where you also some code, I guess.
We'll add more links here as we discover them. Suggestions are welcome!