recommanded_materials

Liam Heng:

Self-plagiarising my response from last term:

There are always other resources if you’d like to read more on top of this as well:

https://jeffe.cs.illinois.edu/teaching/algorithms/notes/98-induction.pdf

https://cseweb.ucsd.edu/classes/sp05/cse101/JeffEdmondsBook.pdf

https://users.metu.edu.tr/serge/courses/111-2011/textbook-math111.pdf

in addition to the listed textbooks on the Course Outline (CLRS and Kleinberg/Tardos).

Most of the textbooks have a soft copy that you can find online for free; I would only recommend buying it if you prefer a hard copy of the book or if you plan to do further algorithms study in the future. In saying that, Kleinberg and Tardos’s Algorithm Design (KT) and Erickson’s Algorithms books are quite beginner-friendly so they are good for when you are starting out in algorithms. They explain a lot of the concepts in greater depth and expand on a lot of the topics that we do in this course, so if you have an interest in learning about the field, they are good resources. They would also serve as good supplementary texts to the course.

Cormen, Leiserson, Rivest, Stein (CLRS) is a very comprehensive textbook and most experts in the field use it as the “reference guide”. But I would only recommend it after you take an algorithms course since it is quite dense and can be quite jarring to read.

Other books I would recommend are:

Tim Roughgarden’s Algorithm Illuminated. This is the book used in Stanford’s Algorithms course; there are also bite-sized videos offered by the author that you can find on YouTube. They cover most of the course and serve as good complementary videos in case anything you find in the course a bit hard to digest.

Steven Skiena’s Algorithm Design Manual. This is written in a very conversational manner, so it’s good if you’re looking for a more informal introduction to algorithms. It can be good for leetcode preparation since it goes through common pitfalls of problem solving as well as how you can recover from it.

Hopefully, a subset of these textbooks can serve as good supplements. They aren’t too bad of a read, so if you can spare a few nights or so, experiment with it and see what clicks for you!


Welcome to point out the mistakes and faults!