This is a broad, well-written, well-organized, and nicely formatted set of lecture notes and problem sets on algorithms. The informal writing style helps those of us who are more applied than theoretical, but still appreciative of the latter. Oh, and it's free too.