Tech Quarto
Search Advanced SearchView Cart   Checkout   
 Location:  Home » Computer Science » Introduction to Algorithms  
Categories
Computer Science
The Internet
For Dummies
Web Browsers
Windows
Digital Culture
Multimedia
Mobile & Wireless
Subcategories
BSD
DOS
General
Linux
MacOS
Solaris
Unix
Windows
New Releases
iPhone: The Missing Manual: Covers the iPhone 3G (Missing Manual)
VMware Infrastructure 3: Advanced Technical Design Guide and Advanced Operations Guide
Learning Python, 3rd Edition
MCITP Self-Paced Training Kit (Exams 70-640, 70-642, 70-643, 70-647): Windows Server 2008 Enterprise Administrator Core Requirements
Xcode 3 Unleashed
Operating System Concepts
The iPhone Developer's Cookbook: Building Applications with the iPhone SDK (Developer's Library)
Python for Unix and Linux System Administration
MacBook For Dummies (For Dummies (Computer/Tech))
Beginning iPhone Development: Exploring the iPhone SDK (Beginning)
Visit Laptop Nirvana for the best Cheap Discount Laptops
Bestsellers
Mac OS X Leopard: The Missing Manual
Photoshop CS3 for Windows and Macintosh (Visual QuickStart Guide)
iPhone: The Missing Manual: Covers the iPhone 3G (Missing Manual)
Cocoa(R) Programming for Mac(R) OS X (3rd Edition)
Illustrator CS3 for Windows and Macintosh (Visual QuickStart Guide)
Apple Pro Training Series: Final Cut Pro 6 (Apple Pro Training)
Introduction to Algorithms
InDesign CS3 for Macintosh and Windows (Visual QuickStart Guide)
VMware Infrastructure 3: Advanced Technical Design Guide and Advanced Operations Guide
Learning Python, 3rd Edition

Introduction to Algorithms

Introduction to Algorithms

zoom enlarge 
Authors: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
Publisher: The MIT Press
Category: Book

List Price: $85.00
Buy New: $58.90
You Save: $26.10 (31%)



New (21) Used (16) from $47.50

Avg. Customer Rating: 4.0 out of 5 stars 166 reviews
Sales Rank: 933

Media: Hardcover
Edition: 2nd
Number Of Items: 1
Pages: 1184
Shipping Weight (lbs): 4.7
Dimensions (in): 9.1 x 8.1 x 2

ISBN: 0262032937
Dewey Decimal Number: 005.1
EAN: 9780262032933
ASIN: 0262032937

Publication Date: September 1, 2001
Availability: Usually ships in 1 to 3 weeks

Editorial Reviews:

Amazon.com
Aimed at any serious programmer or computer science student, the new second edition of Introduction to Algorithms builds on the tradition of the original with a truly magisterial guide to the world of algorithms. Clearly presented, mathematically rigorous, and yet approachable even for the math-averse, this title sets a high standard for a textbook and reference to the best algorithms for solving a wide range of computing problems.

With sample problems and mathematical proofs demonstrating the correctness of each algorithm, this book is ideal as a textbook for classroom study, but its reach doesn't end there. The authors do a fine job of explaining each algorithm. (Reference sections on basic mathematical notation will help readers bridge the gap, but it will help to have some math background to appreciate the full achievement of this handsome hardcover volume.) Every algorithm is presented in pseudo-code, which can be implemented in any computer language, including C/C++ and Java. This ecumenical approach is one of the book's strengths. When it comes to sorting and common data structures, from basic linked lists to trees (including binary trees, red-black, and B-trees), this title really shines, with clear diagrams that show algorithms in operation. Even if you just glance over the mathematical notation here, you can definitely benefit from this text in other ways.

The book moves forward with more advanced algorithms that implement strategies for solving more complicated problems (including dynamic programming techniques, greedy algorithms, and amortized analysis). Algorithms for graphing problems (used in such real-world business problems as optimizing flight schedules or flow through pipelines) come next. In each case, the authors provide the best from current research in each topic, along with sample solutions.

This text closes with a grab bag of useful algorithms including matrix operations and linear programming, evaluating polynomials, and the well-known Fast Fourier Transformation (FFT) (useful in signal processing and engineering). Final sections on "NP-complete" problems, like the well-known traveling salesman problem, show off that while not all problems have a demonstrably final and best answer, algorithms that generate acceptable approximate solutions can still be used to generate useful, real-world answers.

Throughout this text, the authors anchor their discussion of algorithms with current examples drawn from molecular biology (like the Human Genome Project), business, and engineering. Each section ends with short discussions of related historical material, often discussing original research in each area of algorithms. On the whole, they argue successfully that algorithms are a "technology" just like hardware and software that can be used to write better software that does more, with better performance. Along with classic books on algorithms (like Donald Knuth's three-volume set, The Art of Computer Programming), this title sets a new standard for compiling the best research in algorithms. For any experienced developer, regardless of their chosen language, this text deserves a close look for extending the range and performance of real-world software. --Richard Dragan

Topics covered: Overview of algorithms (including algorithms as a technology); designing and analyzing algorithms; asymptotic notation; recurrences and recursion; probabilistic analysis and randomized algorithms; heapsort algorithms; priority queues; quicksort algorithms; linear time sorting (including radix and bucket sort); medians and order statistics (including minimum and maximum); introduction to data structures (stacks, queues, linked lists, and rooted trees); hash tables (including hash functions); binary search trees; red-black trees; augmenting data structures for custom applications; dynamic programming explained (including assembly-line scheduling, matrix-chain multiplication, and optimal binary search trees); greedy algorithms (including Huffman codes and task-scheduling problems); amortized analysis (the accounting and potential methods); advanced data structures (including B-trees, binomial and Fibonacci heaps, representing disjoint sets in data structures); graph algorithms (representing graphs, minimum spanning trees, single-source shortest paths, all-pairs shortest paths, and maximum flow algorithms); sorting networks; matrix operations; linear programming (standard and slack forms); polynomials and the Fast Fourier Transformation (FFT); number theoretic algorithms (including greatest common divisor, modular arithmetic, the Chinese remainder theorem, RSA public-key encryption, primality testing, integer factorization); string matching; computational geometry (including finding the convex hull); NP-completeness (including sample real-world NP-complete problems and their insolvability); approximation algorithms for NP-complete problems (including the traveling salesman problem); reference sections for summations and other mathematical notation, sets, relations, functions, graphs and trees, as well as counting and probability backgrounder (plus geometric and binomial distributions).

Product Description
The first edition won the award for Best 1990 Professional and Scholarly Book in Computer Science and Data Processing by the Association of American Publishers.

There are books on algorithms that are rigorous but incomplete and others that cover masses of material but lack rigor. Introduction to Algorithms 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 the standard reference for professionals and a widely used text in universities worldwide. The second edition features new chapters on the role of algorithms, probabilistic analysis and randomized algorithms, and linear programming, as well as extensive revisions to virtually every section of the book. In a subtle but important change, loop invariants are introduced early and used throughout the text to prove algorithm correctness. Without changing the mathematical and analytic focus, the authors have moved much of the mathematical foundations material from Part I to an appendix and have included additional motivational material at the beginning.



Customer Reviews:   Read 161 more reviews...

5 out of 5 stars The best textbook on algorithms, but it is not a programming book.   June 6, 2008
 1 out of 2 found this review helpful

I used this book for a graduate level Algorithms course, and I really liked it. It is packed full of content on a wide range of topics. While this book does provide some high-level implementations of algorithms in pseudo-code, you will not find any examples of how to program algorithms in this book. That's really not what this book is meant for anyways.

I found the reading to be easier than Knuth on similar topics, but you still need to have sufficient mathematical background in order to keep up (statistics, discrete math, some calculus). Also, unlike many technical books I've read recently, I did not find any mistakes, not even a typo.

Some people are not aware that the MIT Open Courseware website has some excellent free video course lectures that use this book. I highly recommend at least viewing the first three or four of those lectures if you are new to this topic because they compliment this book very well. Make sure you understand the first four chapters of this book before moving on to other topics.

Also, since it had been a while since I had the math as an undergraduate, I was relieved to learn that this book had several appendices that provided a review of the math topics required by the book.

The only negative about the book is that it does not provide answers to any of the exercises at the end of the chapters, so you really need to use this book in conjunction with a course in order to be able to check your progress and how well you are learning the information. If you're not using this book with a course, check the MIT Open Courseware website that I mentioned previously. It has some sample assignments you can use.



4 out of 5 stars This version has NO CD   May 29, 2008
 10 out of 10 found this review helpful

There are three versions of the second edition, only one of which has the CD:

The first one is published by the MIT Press, with the title "Introduction to Algorithms". This one has no CD. This is the one Amazon currently carries, so if you buy from Amazon, you get no CD.

The second one is published by McGraw-Hill, also with the title "Introduction to Algorithms". This one also has no CD.

The third one is published by McGraw-Hill too, but has the title "Introduction to Algorithms and Java CD-ROM". This is the one with the CD. It's much more expensive than the other two.

The CD in the third version contains implementations of the algorithms in Java.

To find someone that carries the CD version, search for this ISBN-13 number: 9780072970548 , or for "Introduction to Algorithms and Java CD-ROM" .

Note: Some listings that come up for the ISBN number will not be the correct version. Look carefully for "and Java CD-ROM" before buying.



4 out of 5 stars excellent resource   May 12, 2008
 1 out of 2 found this review helpful

This book is (in my opinion) an essential resource of common computer science algorithms. It covers a broad range of different algorithm topics and I found the explanations by the authors extremely helpful and simple to understand (both with simple and advanced topics). It does attempt to cover as many algorithm topics as possible, so some topics may not be covered in fine detail (it does not spend as much time on runtime analysis as other books, or spend much time on NP problems). It is perfect for someone taking an algorithms class (grad or undergrad), or someone looking to broaden their algorithm knowledge. I only wish there was some form of solutions guide to help verify answers to review questions.


4 out of 5 stars Complex Topics. Not so Complex Book.   May 2, 2008
 0 out of 1 found this review helpful

If any book is being worshipped for it's content on Algorithms in Academia, then it is this book. I have used this book both in my undergraduate and my Masters and definitely the best in the field.

But, I personally think the topics covered are complex to begin with. So, it takes this book and couple of books for reference to understand the topics completely. If you want to develop new efficient algorithms, then this is the book to begin with. Over all a very good book. Would definitely recommend it.



5 out of 5 stars Excellent Book   April 24, 2008
 0 out of 2 found this review helpful

This book is must have for any software programmer. It is one of the best book I had ever had. It has many mathematical concepts and ppl who are mathematical geeks with software skills will love this book even more like me. This was the first book i bought from Used book section and I am extremely satisfied with the condition. I was quite skeptical when I was buying the book, but the sellers are really good with the what they promised. I am totally impressed and i really appreciate it.
Thanks Guys.


Powered by Associate-O-Matic