Location:  Home » Programming » Introduction to Algorithms, Third Edition  
Computer Programming Books

Introduction to Algorithms, Third Edition

Introduction to Algorithms, Third EditionAuthors: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
Publisher: The MIT Press
Category: Book

List Price: $87.00
Buy New: $58.00
as of 3/11/2010 18:57 WIT details
You Save: $29.00 (33%)



New (33) Used (12) from $53.50

Seller: TextbookOutlet
Rating: 4.5 out of 5 stars 8 reviews

Media: Hardcover
Edition: 3
Pages: 1312
Number Of Items: 1
Shipping Weight (lbs): 5.1
Dimensions (in): 9.1 x 8.3 x 2.1

ISBN: 0262033844
Dewey Decimal Number: 005.1
EAN: 9780262033848

Availability: Usually ships in 1-2 business days

Also Available In:

  • Paperback - Introduction to Algorithms, Third Edition (International Edition)

Similar Items:


Editorial Reviews:

Product Description
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, and substantial additions to the chapter on recurrences (now called "Divide-and-Conquer"). 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.



Customer Reviews:
Showing reviews 1-5 of 8



5 out of 5 stars THE book for learning the theory and implementation of algorithms   November 7, 2009
calvinnme (Fredericksburg, Va)
13 out of 15 found this review helpful

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



5 out of 5 stars Fantastic, Comprehensive Algorithms Textbook   February 27, 2010
Steven J. Tricanowicz
1 out of 1 found this review helpful

This textbook isn't just a textbook for an algorithms class. No matter what the project, if you need details on any sort of data structure or algorithm, this book has details on it. It is very theoretical, but extremely comprehensive. Whether this book is required, recommended, or not even suggested at all, I cannot emphasize how helpful it will be. It is a textbook that will outlive the course by a very long time.


5 out of 5 stars A great, but not perfect book   February 22, 2010
Narada (Princeton, NJ, USA)
I have used this as a graduate algorithms textbook, and was very happy with it, as were the students, as far as I could tell, but it does require a lot of work to extract what is needed for a course. This problem does not come up with, eg, Aho, Hopcroft, Ullman (which is very highly recommendedThe Design and Analysis of Computer Algorithms. Still, any working theoretical computer scientist (and any good programmer) should have Corman/Leiserson/Rivest/Stein close at hand on their shelf.


5 out of 5 stars a classic   October 24, 2009
M. Wong (NY)
7 out of 14 found this review helpful

This book is a classic. I have had the 1st edition for 15 years, 2nd edition for another six or seven, and I still use it on occasion as a reference guide that has no equal.


5 out of 5 stars Great book   December 1, 2009
Shahzad Chaudhry
0 out of 8 found this review helpful

Great book.. Good on time delivery.. A+
will buy again.

Thanks



Showing reviews 1-5 of 8




algorithm design  algorithms  data structures  programming  software engineering  

Programming Books