

Computer Scientists Guide to the Algorithms? - kombinatorics

As a first year studying pure mathematics and computer science, I've been exposed to many different algorithms, trees, data structures and etc. Many of these are fascinating and I always tree to think of examples of how I would be able to implement them in the real world.<p>However, I am starting to find it hard to keep track of so many different algorithms, data structures, tree and etc. Is there a "Big Book of Algorithms" that contains most, if not all of the essential algorithms?<p>Thanks.
======
Millennium
I'm going to express size in Knuths, where one Knuth is the size of one volume
of Donald Knuth's "The Art of Computer Programming."

Knuth's work is THE seminal text for this sort of thing. It's very long -just
over 4 Knuths thus far, and Volume 4 is actually only the first subvolume of
something much larger- and it's very, very dense. If you want The Big Book of
Algorithms, it certainly fits the bill, but does so in the almost cartoonish
sense of the massive book that breaks whatever desk you put it on. It may also
break the bank: this many books of this quality and length can get expensive.

Introduction to Algorithms, by Cormen, Leiserson, Rivest, and (in later
editions) Stein, also has a very good reputation. It's about 1.5 Knuths long,
and it's not as dense, so you're not going to find as much raw STUFF in here,
but it covers the basics quite well, and also a fair amount of the not-so-
basics.

O'Reilly's "Mastering Algorithms with _____" (there are versions for a number
of languages) can also be good for quick reference. Length-wise, they're about
a Knuth apiece, and there's only so much you can fit in a book that size. On
the other hand, unlike the previous two that I've mentioned, these books
present algorithms in a language people actually use. CLRS uses pseudocode,
while Knuth himself often uses a kind of assembly language (I told you it was
dense).

Speaking of O'Reilly, they also have "Algorithms in a Nutshell." This is the
shortest one I can really talk about here -about 0.5 Knuths, maybe shorter-
and that really limits what you can put in it, but it hits the most common
cases.

------
jclos
The TAOCP[1] is the reference for all the types of algorithms it covers, the
Cormen book[2] is a reference for its breadth and the Algorithm Design
Manual[3] is quite nice to learn how to design your own.

[1]: <http://www-cs-faculty.stanford.edu/~uno/taocp.html>

[2]: [http://www.amazon.com/Introduction-Algorithms-Thomas-H-
Corme...](http://www.amazon.com/Introduction-Algorithms-Thomas-H-
Cormen/dp/0262033844)

[3]: <http://www.amazon.com/dp/1848000693>

------
ivan_ah
This would be a good start:

[http://www.amazon.com/Introduction-Algorithms-Thomas-H-
Corme...](http://www.amazon.com/Introduction-Algorithms-Thomas-H-
Cormen/dp/0262033844)

