Algorithms, Jeff Erickson’s lecture notes.
Mentioned in a post on the Theoretical Computer Science blog, What Lecture Notes Should Everyone Read?.
From the introduction:
Despite several rounds of revision, these notes still contain lots of mistakes, errors, bugs, gaffes, omissions, snafus, kludges, typos, mathos, grammaros, thinkos, brain farts, nonsense, garbage, cruft, junk, and outright lies, all of which are entirely Steve Skiena’s fault. I revise and update these notes every time I teach the course, so please let me know if you find a bug. (Steve is unlikely to care.)
The notes are highly amusing and useful to anyone seeking to improve current subject identification (read searching) practices.