I am a programmer and no formal CS knowledge. I have the following books on the topic Algorithms/DataStructures. Can you please help me pick the first one to start so that I am able to get up to the speed. It will be great if you can specify an order as well.
* The Algorithm Design Manual
by Steven S Skiena
Link: http://amzn.com/1848000693
* Algorithms (4th Edition)
by Robert Sedgewick et al.
Link: http://amzn.com/032157351X
* Algorithm Design
by Jon Kleinberg et al.
Link: http://amzn.com/0321295358
* Introduction to Algorithms, 3rd Edition
by Thomas H. Cormen et al.
Link: http://amzn.com/0262033844
* The Art of Computer Programming, Volumes 1-4A Boxed Set
by Donald E. Knuth
Link: http://amzn.com/0321751043
Cormen's book is a bit more thedious to read and I don't know it that well but I think is a little bit more rigorous with math. Sedgewick's book doesn't mention asymptotic limits or BigO notation, rather talks about the run time / memory requirements in more informal terms, like "run time being proportional to the square of the number of input items", etc. But, there's another book from Sedgewick (and Flajolet!) if you want to go deeper into analysis: (1).
Skienna's book is great to have a wider outline on all sorts of algorithms, including some less widely known and (I think) not covered in either of Sedgewick's or Cormen's book. It is, if I'm allowed the pun, more of a breadth first than a depth first approach to the subject.
1: http://www.amazon.com/Introduction-Analysis-Algorithms-2nd/d...