PDA

View Full Version : Books on Programming Algorithms



nebu
August 21st, 2008, 09:10 AM
Could you guys suggest some books on programming algorithms. From what I hear, this book called "The Art of Computer Programming" by Donald Knuth is really good. Any comments about that?

leg
August 21st, 2008, 09:36 AM
Those books are good but require a lot of effort to get through. Knuths original set of three books (Fundamental, Seminumerical and Sorting & Searching) set out to explain the algorithms contained in three different ways. He created an assembly type language to demonstrate implementing the algorithms a discussion of the algorithms in great detail and a mathematical proof. I myself could follow the discussions and the code in the book but found myself utterly lost with the mathematical proofs.

Most (if not all) of the algorithms can be found in other books presented in a more friendly manner. For instance I also have a book called Data Structures & Algorithms for Java which covers quite a few of the algorithms contained in Knuths work but implemented in the Java language which I found easier to understand and use. This book has a counterpart for a few languages and there are other titles offering the same thing.

I do read through Knuths books every now and again but usually once I have learned how to do something and I want to add to my understanding of the problem by reading through his excellent discussions.

dribeas
August 21st, 2008, 09:53 AM
Could you guys suggest some books on programming algorithms. From what I hear, this book called "The Art of Computer Programming" by Donald Knuth is really good. Any comments about that?

Introduction to Algorithms, Cormen et al. google (http://books.google.es/books?id=NLngYyWFl_YC&dq=introduction+to+algorithms+cormen&pg=PP1&ots=BwOvDy7fHe&sig=zOCngQklwmjK-ZrdvpjFrVs3-Vc&hl=es&sa=X&oi=book_result&resnum=1&ct=result), amazon (http://www.amazon.com/Introduction-Algorithms-Thomas-H-Cormen/dp/0262032937).

This is a must-have book on algorithms.

Foundations of computer science, Aho et al. amazon (http://www.amazon.com/Foundations-Computer-Science-C-Principles/dp/0716782847/ref=sr_1_2?ie=UTF8&s=books&qid=1219308352&sr=1-2)

This is much easier to read for beginners and very readable, but it is not just a beginners book. I read a previous edition that was not C oriented, but don't have time to search for it :P

There are other recommended books, Skienna's Algorithm design manual was recommended to me and was good, but I still prefer Cormen's. Knuth's as was pointed before is not easy to read. Once you have learned from others you can go through them for more insights and different approaches.

David

tinny
August 21st, 2008, 10:47 AM
Introduction to Algorithms, Cormen et al. google (http://books.google.es/books?id=NLngYyWFl_YC&dq=introduction+to+algorithms+cormen&pg=PP1&ots=BwOvDy7fHe&sig=zOCngQklwmjK-ZrdvpjFrVs3-Vc&hl=es&sa=X&oi=book_result&resnum=1&ct=result), amazon (http://www.amazon.com/Introduction-Algorithms-Thomas-H-Cormen/dp/0262032937).

This is a must-have book on algorithms.



This book is the one you should go for. Make sure you get the least copy you can as the book has had a lot of errata. (it has had various printings)

Here is the errata
http://www.cs.dartmouth.edu/~thc/clrs-2e-bugs/bugs.php

Despite the errata its still a great book.

nebu
August 21st, 2008, 01:02 PM
any suggestions on books for c....

badperson
August 21st, 2008, 03:04 PM
I have one just called 'Algorithms' which is geared towards java and uses junit a lot.
I haven't really gone through it yet, although I want to this year; I'm working my way through a couple of design books, and I'm taking a class this fall.

I want to go through the Knuth books at some stage; the math is way over my head at this point, but those books are the real deal from what I've heard.
bp

y-lee
August 21st, 2008, 04:06 PM
any suggestions on books for c....

Robert Sedgewick's Algorithms In C (http://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structures/dp/0201314525) is a very nice tho overpriced book. :)

generalguy
August 21st, 2008, 05:36 PM
He also has it in C++ and Java, if you like those languages more.

stevescripts
August 21st, 2008, 06:43 PM
A very nice on-line reference (courtesy of the NIST):

http://www.nist.gov/dads/

Steve

Erdaron
August 21st, 2008, 06:46 PM
There's also Numerical Recipes (http://www.amazon.com/Numerical-Recipes-3rd-Scientific-Computing/dp/0521880688/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1219340615&sr=8-1). The series might focus on C and Fortran, but algorithms are explained pretty clearly. I've used it to write programs in Python, for example.