Introduction to Algorithms, Third Edition and thousands of other textbooks are available for instant download on your Kindle Fire, iPad, PC or Mac. Get your free Kindle app.

Buy New

or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Kindle Edition
Read instantly on your iPad, PC, Mac or Kindle Fire
Buy Price: $63.96
 
 
   
Buy Used
Used - Good See details
$58.67 & this item ships for FREE with Super Saver Shipping. Details

or
Sign in to turn on 1-Click ordering.
 
   
Sell Back Your Copy
For a $42.61 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Introduction to Algorithms
 
 

Introduction to Algorithms [Hardcover]

Thomas H. Cormen (Author), Charles E. Leiserson (Author), Ronald L. Rivest (Author), Clifford Stein (Author)
4.3 out of 5 stars  See all reviews (46 customer reviews)

List Price: $92.00
Price: $67.33 & this item ships for FREE with Super Saver Shipping. Details
You Save: $24.67 (27%)
  Special Offers Available
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it delivered Friday, May 18? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for students on millions of items. Learn more

Formats

Amazon Price New from Used from
Kindle Edition $63.96  
Hardcover $67.33  
Paperback --  
Unknown Binding --  
Sell Back Your Copy for $42.61
Whether you bought it on Amazon or somewhere else, you can sell it back through our Book Trade-In Program at the current price of $42.61.
Used Price$43.00
Trade-in Price$42.61
Price after
Trade-in
$0.39

Book Description

July 31, 2009 0262033844 978-0262033848 third edition

Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. Introduction to Algorithms uniquely combines rigor and comprehensiveness. The book covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers. Each chapter is relatively self-contained and can be used as a unit of study. The algorithms are described in English and in a pseudocode designed to be readable by anyone who has done a little programming. The explanations have been kept elementary without sacrificing depth of coverage or mathematical rigor.The first edition became a widely used text in universities worldwide as well as the standard reference for professionals. The second edition featured new chapters on the role of algorithms, probabilistic analysis and randomized algorithms, and linear programming. The third edition has been revised and updated throughout. It includes two completely new chapters, on van Emde Boas trees and multithreaded algorithms, substantial additions to the chapter on recurrence (now called "Divide-and-Conquer"), and an appendix on matrices. It features improved treatment of dynamic programming and greedy algorithms and a new notion of edge-based flow in the material on flow networks. Many new exercises and problems have been added for this edition. As of the third edition, this textbook is published exclusively by the MIT Press.


Special Offers and Product Promotions

  • Buy $50 in qualifying physical textbooks, get $2 in Amazon MP3 Credit. Here's how (restrictions apply)

Frequently Bought Together

Introduction to Algorithms + Cracking the Coding Interview: 150 Programming Questions and Solutions + Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition (Programmer to Programmer)
Price For All Three: $112.23

Show availability and shipping details

Buy the selected items together


Editorial Reviews

Review

"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

Review

"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

(Daniel Spielman )

" 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


Product Details

  • Reading level: Ages 18 and up
  • Hardcover: 1312 pages
  • Publisher: The MIT Press; third edition edition (July 31, 2009)
  • Language: English
  • ISBN-10: 0262033844
  • ISBN-13: 978-0262033848
  • Product Dimensions: 9.1 x 8.2 x 2.1 inches
  • Shipping Weight: 4.6 pounds (View shipping rates and policies)
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (46 customer reviews)
  • Amazon Best Sellers Rank: #3,183 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

Most Helpful Customer Reviews
303 of 315 people found the following review helpful
Great book but .... December 5, 2009
Format:Hardcover
First of all, this is the quintessential book on algorithms. If you want to learn, this is the book to get. The information in the book is awesome and it can make an excellent reference.

Students will need a very strong mathematical background and a strong arm to even think about picking up this book because the it is heavy (both physically and metaphorically). Mastery of discrete math is a must, graph theory, programming, and, combinatorics will also help.

With that said, this book falls short in one MAJOR area, explanations. Too often explanations are left out and left as exercises and there are no solutions to the exercises! Or details are replaced by ambiguous statements such as of "cleary, this works", or "it is easy to see that this ...". I get the concept of learning by doing, really I do, but there should be some kind of solutions so the student can CHECK his/her understanding of the material and sometimes the exercises are not about advanced aspects of a concept, sometimes it is the core material. Even if the solution manual only contained a simple answer without the work. Not only would it help tremendously but the purpose of doing the exercises would be preserved; that is the student getting his/her "hands dirty" and working out a problem.

For the love everything good and pure in this universe, I really wish writers of mathematical books would stop using statements like "clearly this works" or "it is easy to see", "it is obvious" etc. While that may be true for you and your brilliant circle of colleagues, everything is not always clear and obvious to your readers. Save all of that ambiguity for your research paper.

A great book should deliver in two areas; it should challenge and it should inform. The challenge is there, no doubt. However in some ways it fails to inform the reader. The authors should really think about releasing a students solution manual to help students learn better. I take away two stars for the reasons stated about.
Was this review helpful to you?
83 of 92 people found the following review helpful
Format:Hardcover
An algorithm is nothing more than a set of computational steps that transform a specific input into a desired output. From that definition, there are plenty of books on the market that are "cookbooks" of algorithms and will enable you to do just that - transform specific inputs into outputs, complete with source code, and with no real depth of understanding of your own required. However, to be a computer scientist versus a programmer, you need to know what makes an efficient algorithm, why is a particular algorithm efficient, what kinds of common data structures are involved in various computing problems, how to traverse those data structures efficiently, and a notation for analyzing various algorithms. This book will help you learn all of that. The study of the theory of algorithms is not to be undertaken lightly, and I don't recommend you attempt to self-study such a complex subject with such strong mathematical underpinnings. In fact, this book is really aimed at graduate computer science students and is often on the reading list of Ph.D. qualifying examinations in that field.

For students of graph theory, you might find your knowledge solidly supplemented by the material in chapters 22 through 26 on graph algorithms. The last section of the book, "Selected Topics", goes over various specific algorithms from many fields using the knowledge of algorithm design and analysis you have learned up to this point in the book. Throughout, the text is very clear, and there are plenty of instructive diagrams and pseudocode.

One of the most interesting parts of the book is the chapter on NP-completeness. This is the study of problems for which no efficient algorithm has ever been found. These problems are interesting for two reasons. The first being that even though an efficient algorithm has never been found, there is no proof that one cannot exist. Second, if an efficient algorithm exists for one of them, then an efficient algorithm exists for all. Thus, if you are ever called upon to write an efficient algorithm for an NP-complete problem, you will be involved in a long fruitless search if you do not recognize the problem as NP-complete. If you can show the problem is NP-complete, you can go about producing an algorithm that gives a good solution, but not the best possible solution. This kind of knowledge is what separates a computer scientist from a mere programmer, and is one of many reasons to study this book's contents. I highly recommend this book to anyone who truly wants to be called a computer scientist.

To get the most from this book you should already be familiar with discrete mathematics and combinatorics, as this book makes heavy use of these subjects. Because this book contains no solutions to any of the exercises, might I suggest "Problems on Algorithms" by Ian Parberry as a companion to this book. It has a little bit of tutorial and a lot of exercises, many unsolved, but some with hints and others with solutions. Also, for more basic material, you might look at "Schaum's Outline of Discrete Mathematics". It's very inexpensive and can almost stand alone as a tutorial on the mathematics you need to know to succeed at understanding this book. The table of contents is not shown for this third edition of the book, so I supply that information next:

Table of Contents
Preface
I Foundations
1 The Role of Algorithms in Computing
2 Getting Started
3 Growth of Functions
4 Recurrences
5 Probabilistic Analysis and Randomized Algorithms
II Sorting and Order Statistics
6 Heapsort
7 Quicksort
8 Sorting in Linear Time
9 Medians and Order Statistics
III Data Structures
10 Elementary Data Structures
11 Hash Table
12 Binary Search Trees
13 Red-Black Trees
14 Augmenting Data Structures
IV Advanced Design and Analysis Techniques
15 Dynamic Programming
16 Greedy Algorithms
17 Amortized Analysis
V Advanced Data Structures
18 B-Trees
19 Binomial Heaps
20 Fibonacci Heaps
21 Data Structures for Disjoint Sets
VI Graph Algorithms
22 Elementary Graph Algorithms
23 Minimum Spanning Trees
24 Single-Source Shortest Paths
25 All-Pairs Shortest Paths
26 Maximum Flow
VII Selected Topics
27 Sorting Networks
28 Matrix Operations
29 Linear Programming
30 Polynomials and the FFT
31 Number-Theoretic Algorithms
32 String Matching
33 Computational Geometry
34 NP Completeness
35 Approximation Algorithms
Was this review helpful to you?
34 of 37 people found the following review helpful
Everything About Algorithms December 6, 2009
Format:Hardcover|Amazon Verified Purchase
I have studied algorithms using several books, and this is by far the best. It is comprehensive (twice as thick as the average book), you can find everything you are looking for. It is pedagogical too, always starts with simpler problems. I have also used the first edition for some time, and can say that this one is much improved as a result of feedback from instructors and students. Everything from pseudocode to page layout has been touched in some way, and made easier to read and understand for the student.

The only negative thing about this book is the lack of solutions to exercises. The authors must have realized the importance of this. They published a small subset of solutions on the web, but that is inadequate.
Was this review helpful to you?
Most Recent Customer Reviews
Great book, in-depth and theoretical
This book (colloquially known as CLRS) and Algorithm Design (known as KT) are the two most popular textbooks on the analysis and design of algorithms. Read more
Published 5 days ago by Tony J
Very good Algo book
Among various Algorithm books, this book is really good. Very comprehensive coverage. I use it mostly for reference for doing serious development work.
Published 27 days ago by Boring Person
Bible for all programmers.
Needless to say, this is a Bible book for all programmers. It is also the first book you need to read if you want to prepare a CS interview.
Published 1 month ago by David Tsai
Nice book
It is just a nice book....

but if you have any problem with this book for kindle (ipad) ... just update the kindle..then everything will work fine.. Read more
Published 1 month ago by stephen 2012
The only book you'll need for algorithms and data structures
This is rightfully the standard text for computer science courses in data structures and algorithms. Read more
Published 2 months ago by Eric Shamay
Perfect read
I am a masters students and have been reading a major part of this book (although have not yet read it entirely) for the course in Efficient Algorithms and Data structures. Read more
Published 2 months ago by Rohit Tidke
Great book
Great book, it helped me in Programmers Olympiad. I suggest it to everyone ;)! Hope to see more good books like this one!
Published 5 months ago by Patiss
A great algorithms book for computer scientists
I was first introduced to an earlier edition of this book when I was a computer science grad student back in the early 90's. Read more
Published 6 months ago by John L. Miller
A Book Must Read
I will keep it short. Get this book and after you are done with it, you will think more creatively and analytically than ever before.
Published 7 months ago by Saj
a broken "new" book
This book is my textbook and it is so classic that I decided to buy a new one for self collection. But when I opened the package, the corn of the book face is broken. Read more
Published 7 months ago by quentin
Search Customer Reviews
Only search this product's reviews

Inside This Book (learn more)
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Surprise Me!
Search Inside This Book:

What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(9)
(2)
(1)

Your tags: Add your first tag
 

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums





Look for Similar Items by Category


Look for Similar Items by Subject