tags:

views:

1069

answers:

10

I have the book "Introduction to Algorithms" by by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein.

What are the other books/sources for algorithms? Even I would like to know information on communities where discussion about Algorithms happen.

A: 

My favorite algorithm is Viterbi (forward dynamic programming); it has been given countless names, but a huge number of algorithms, when analyzed, actually turn out to be just special cases of this rather general but incredibly useful algorithm.

Dark Shikari
+4  A: 

Get your copy of Essential Books on Algorithms and Data Structures - Release 2 CD-ROM from Dr.Dobbs Journal.

The following books are inlcuded in that

  • Data Structures and Algorithm Analysis in C (C) 1993, The Benjamin/Cummings Publishing Co., Inc.
  • Data Structures, Algorithms, and Program Style Using C (C) 1988, PWS Kent Publishing Co.
  • Data Structures: From Arrays to Priority Queues (C)1985, Wadsworth, Inc.
  • Fundamentals of Data Structures (C) 1976, 1983 Computer Science Press, Inc.
  • Information Retrieval: Data Structures and Algorithms (C)1992, PTR Prentice-Hall, Inc.
  • Introduction to Algorithms (C) 1990, The Massachusetts Institute of Technology.
  • Practical Data Structures in C++ (C) 1993, John Wiley & Sons, Inc.
  • Reliable Data Structures in C (C) 1985, Plum Hall Inc.
  • Data Structures and Algorithms (C) 1983, Bell Laboratories, Inc.

AND

  • Articles from Dr. Dobb's Journal (C) 1998, Miller Freeman, Inc.
Prakash
A: 

Cormen Leiserson and Rivest is great, but it's quite heavy going and not the kind of book you read cover to cover -- it's more of a reference if you need to get the really fine detail on something. A more readable book that still covers all the main ideas is Robert Sedgewick's Algorithms.

Also, depending on exactly what kind of algorithms you're talking about, Donald Knuth's The Art of Computer Programming (in three hard-back volumes, so it's expensive) is a classic.

Ben
+2  A: 

My first suggestion isn't exactly an algorithms book - it's Programming Pearls by Jon Bentley. It really makes good passive reading. The sequel More Programming Pearls is pretty good, too. Wirth's book (PDF ALERT) is a really good introduction to this business. Aho, Hopcroft and Ullman is a bit baroque, but nice.

This OCW course is okay, but I find the course textbook CLRS a little too academic for my tastes. I feel The Algorithm Design Manual is a better read. Once you have read all these, open up you copy of Knuth: you won't regret it.

If you really want to hone your algorithm skills, try out some Topcoder problems, and look at previous years' Google Code Jam and ACM ICPC problems. Some good tutorials can be found here.

http://stackoverflow.com/questions/406760/whats-your-most-controversial-programming-opinion/1330062#1330062
Jim G.
+4  A: 

Donald Knuth's set of books is one of the best resources for algorythms around:

The Art of Computer Programming

Oded
A: 

CLR is great. Try the Stony Brook Algorithm Repository for an online algorithm catalog by Steven Skienna.Udi Manber's Algorithms: A creative approach is a bit more applicative. Kleinberg and Tardos' Algorithm Design looks nice, but I have just begun reading it.

Yuval F
+1  A: 

The NIST Directory of Algorithms and Data Structures is rather good when you're searching for definitions, short descriptions and pointers to further resources. As a reference, I also like TAoCP, which I find useless as a text book.

Konrad Rudolph
+3  A: 

Donald Knuth's Computer Musings are great videos. (At least they where when they worked - 4 are available on iTunes)

Stephen Denne
+3  A: 

This book was published recently, completely free
http://dotnetslackers.com/projects/Data-Structures-And-Algorithms

It might not be the definitive guide, but I believe it is worth reading, especially if you are/plan to dive into .NET

Slavo
+1  A: 

Top Coder has some good algorithm tutorials.

Jim G.