Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

I'm looking for a good book on algorithms and data structures for a beginner. I was reading some reviews of these two books: Introduction to Algoritms and The Algorithm Design Manual.

Introduction to Algorithms is widely recognized but at the same time many people consider a great book but only as a bible/reference/encyclopedia.

The Algorithm Design Manual seems to be considered too basic, "a shopping catalog of algorithms" and some people recommend against it. The thing is those kind of opinions seems to be based on the 1st edition. According to author of the book:

"This newly expanded and updated second edition continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency. Expanding on the first edition, the book now serves as the primary textbook of choice for algorithm design courses while maintaining its status as the premier practical reference guide to algorithms for programmers, researchers, and students."

"The second edition contains enough material to serve as the textbook for a standard Introduction to Algorithms course. I assume the reader has completed the equivalent of a second programming course, typically titled Data Structures or Computer Science II."

So my question is, what do you think about The Algorithm Design Manual 2nd edition for a beginner that wants to learn about algorithms and data structures? Is it actually better than the 1st edition for the task? Or do you think CLRS is a better option?

share|improve this question

closed as off-topic by Snowman, gnat, Ixrec, MichaelT, GlenH7 Apr 26 at 23:04

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – Snowman, gnat, Ixrec, GlenH7
If this question can be reworded to fit the rules in the help center, please edit the question.

2nd editions are almost always better, than first .. so i don't understand the question. –  c69 Dec 9 '11 at 18:46
My question is if the 2nd editions is still a "catalogue of algorithms". That sounds good for someone that knows about algorithms and data structures but no for a beginner that is just getting his first book on the subject. –  user3680 Dec 9 '11 at 21:41

1 Answer 1

To answer your specific question, the second edition is definitely better. It includes more on sorting and graph algorithms, for example.

I read the second edition, and liked it quite a bit. That said, I wasn't approaching it as a beginner, but rather as someone trying to use it as a catalog of algorithms with some fun stories attached. It's still one of the references I keep around because of that large catalog of algorithms it has.

I'm not sure that I'd recommend the book as your first text on algorithms and data structures though. Perhaps as a companion book that shows practical applications and provides useful discussion, but not as your main text. The author moves pretty quickly from topic to topic, and while the coverage is broad, it's not necessarily very in-depth.

Perhaps the author himself provides the best description of the book:

It is divided into two parts: Techniques and Resources. The former is a general guide to techniques for the design and analysis of computer algorithms. The Resources section is intended for browsing and reference, and comprises the catalog of algorithmic resources, implementations, and an extensive bibliography.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.