by Jeff Erickson

🔥1st edition, June 2019 🔥

(Amazon links: US, UK, DE, ES, FR, IT, JP)

This web page contains a free electronic version of my self-published textbook Algorithms , along with other lecture notes I have written for various theoretical computer science classes at the University of Illinois, Urbana-Champaign since 1998.

Bug reports. After years of trying and failing to manage bug reports by email, I now maintain an issue-tracking page at GitHub. If you find an error in the textbook, in the lecture notes, or in any other materials, please submit a bug report. All other feedback is welcome as well.

Permissions. Anyone is welcome to download, print, use, copy, and/or distribute anything on this page, either electronically or on paper. You do not need to ask my permission, although I would appreciate hearing from you if you find this material useful. If you redistribute any of this material, please include a link back to this web page, either directly or through the mnemomic shortcut http://algorithms.wtf. Specifically:

The textbook Algorithms (in both paper and electronic forms) is licensed under a Creative Commons Attribution 4.0 International license.

(in both paper and electronic forms) is licensed under a Creative Commons Attribution 4.0 International license. All other lecture notes are licensed under a more restrictive Attribution-NonCommercial-ShareAlike 4.0 International license.

Please do not ask me for solutions to the exercises. See the course materials page for an explanation.

Context. This material is the primary reference for two regularly-offered theoretical computer science courses at Illinois: CS 374 and CS 473. I taught these courses most recently in Spring 2018 and Spring 2017, respectively. I maintain a complete archive of my past homeworks, exams, and lab handouts on a separate page.