http://www.cs.dartmouth.edu/courseguide/undergrad/cs_25.html
A survey of fundamental algorithms, including geometric algorithms, graph algorithms, algorithms for string processing, and numerical algorithms. The efficiency of the algorithms in terms of time and space is discussed, although the emphasis is on presentation, implementation and formal analysis.