I'll second Intro to Algorithms, which has been mentioned. It's what I used in my algorithms class and it's quite comprehensive. (It will also take you a while to get through.)<p>I've also heard <i>The Algorithm Design Manual</i> recommended, although I haven't read it and don't own a copy. <a href="http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1848000693/ref=tmm_hrd_title_0" rel="nofollow">http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/...</a>