- Series: The MIT Press
- Hardcover: 1312 pages
- Publisher: The MIT Press; 3rd edition (July 31, 2009)
- Language: English
- ISBN-10: 9780262033848
- ISBN-13: 978-0262033848
- ASIN: 0262033844
- Product Dimensions: 8 x 2 x 9 inches
- Shipping Weight: 4.6 pounds (View shipping rates and policies)
- Average Customer Review: 588 customer reviews
- Amazon Best Sellers Rank: #8,317 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Introduction to Algorithms, 3rd Edition (The MIT Press) 3rd Edition
Use the Amazon App to scan ISBNs and compare prices.
Frequently bought together
Customers who bought this item also bought
"In light of the explosive growth in the amount of data and the diversity of computing applications, efficient algorithms are needed now more than ever. This beautifully written, thoughtfully organized book is the definitive introductory book on the design and analysis of algorithms. The first half offers an effective method to teach and study algorithms; the second half then engages more advanced readers and curious students with compelling material on both the possibilities and the challenges in this fascinating field."--Shang-Hua Teng, University of Southern California
""Introduction to Algorithms, " the 'bible' of the field, is a comprehensive textbook covering the full spectrum of modern algorithms: from the fastest algorithms and data structures to polynomial-time algorithms for seemingly intractable problems, from classical algorithms in graph theory to special algorithms for string matching, computational geometry, and number theory. The revised third edition notably adds a chapter on van Emde Boas trees, one of the most useful data structures, and on multithreaded algorithms, a topic of increasing importance."--Daniel Spielman, Department of Computer Science, Yale University
"As an educator and researcher in the field of algorithms for over two decades, I can unequivocally say that the Cormen book is the best textbook that I have ever seen on this subject. It offers an incisive, encyclopedic, and modern treatment of algorithms, and our department will continue to use it for teaching at both the graduate and undergraduate levels, as well as a reliable research reference."--Gabriel Robins, Department of Computer Science, University of Virginia
As an educator and researcher in the field of algorithms for over two decades, I can unequivocally say that the Cormen et al book is the best textbook that I have ever seen on this subject. It offers an incisive, encyclopedic, and modern treatment of algorithms, and our department will continue to use it for teaching at both the graduate and undergraduate levels, as well as a reliable research reference.―Gabriel Robins, Department of Computer Science, University of Virginia
Introduction to Algorithms, the 'bible' of the field, is a comprehensive textbook covering the full spectrum of modern algorithms: from the fastest algorithms and data structures to polynomial-time algorithms for seemingly intractable problems, from classical algorithms in graph theory to special algorithms for string matching, computational geometry, and number theory. The revised third edition notably adds a chapter on van Emde Boas trees, one of the most useful data structures, and on multithreaded algorithms, a topic of increasing importance.―Daniel Spielman, Department of Computer Science, Yale University
Try the Kindle edition and experience these great reading features:
588 customer reviews
Review this product
Read reviews that mention
Showing 1-6 of 588 reviews
There was a problem filtering reviews right now. Please try again later.
As such it probably earns more than the 3 stars I will give it from my own perspective. My reasons for this are inherent in my own relationship to the topic - as a "user" if you will.
I bought this book in order to dig deeper into my own conceptual understanding of algorithms, working by my myself.
For this purpose I found the book to be quite tedious. Disadvantageous are especially the fetishization of compact representations, a tendency mathematicians are known to have.
It really doesn't pull a lot of punches when it comes to dishing out mathematical expressions for the reader to patiently unfold for themselves in order to really grasp the meaning of the surrounding text - Ingestion of the material can become a true test of perseverance this way.
It also needs to be said that this is one of these books that bears "Introduction" in the title when it works in fact more like an encyclopedic heavyweight 1200 page quasi-complete survey of the field.
I'm writing this so you know what you are getting into. Be sure this is what you're looking for and what you need.
This book is impressive! It covers a lot of subject matter and is clearly worded. However, you're going to get lost because this often reads more like a reference manual than a conversation that appeals to intuition. You'll be pushed into analyzing algorithms for theoretical data structures that you fuzzily remember (if at all). But, nonetheless, throw enough man hours into this book and you will learn concrete approaches to determining just how hard you're making the computer work.
My biggest criticism is that, as an *introduction*, this book doesn't do the best job at warming up readers to new tools and methodologies. This is an 'eh, just push them into the deep end' kind of approach to learning.
- The introduction (Chapters 1-4) is really good and does a good job setting up all the fundamental concepts of algorithms. I think a lot of people tend to skip over introductions because they think they know all of it already, but this is an introduction that I recommend reading the whole way through.
- The book is a pretty light read (none of the math is too difficult) and each chapter is a good length.
- I think the material on dynamic programming and greedy algorithms was particularly enlightening, and if you read it the whole way through you actually learn how to prove that greedy algorithms work, instead of just being like "let's use a greedy algorithm because it seems right"
- I was able to copy a lot of CLRS code almost verbatim in my programming interviews and pass them.
- The figures are really well done and informative.
- The pseudocode has a lot of one-letter variable names, and while this follows the tradition of pure math, it also makes understanding the algorithms more difficult than it should be.
- Sometimes the pseudocode is not the "easiest" possible pseudocode (for example, merge sort), and I think it would be better if the authors presented a simpler version of the pseudocode first and then extended it to the optimal version. But then I guess CLRS would be even longer than it already is.
- The arrays are 1-indexed, which makes it trickier to convert to code. Also there are some sections of the textbook (the counting sort section) where some of the arrays are 0-indexed and other arrays are 1-indexed, which is just weird.
- I think the material on graphs, particularly the derivations, could be done in a more engaging and intuitive way. The derivations in Chapters 22-24 were a long series of small uninteresting lemmas, instead of a small number of harder, more insightful theorems. I found derivations elsewhere on the internet that were a lot more interesting and built more intuition about why the procedures worked. I feel like the rest of the book is pretty good though, so maybe all the graph stuff was written by a separate person who is not very good at explaining things.
My only complaint is that the binding has completely stated disintegrating after only 9 weeks of use. All of chapters 15 and 16 are completely falling out of my copy (and this is getting worse). Very disappointing as I plan on using it for a long time.
Great reference and great read when you need to get out of the box and think creatively.
For a more approachable intro to algorithms, check out Sedgewick's book. That book also has a companion website and Coursera course. it's hard to go wrong with that combo.