Introduction to Algorithms is a book by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. The book has been widely used as the textbook for algorithms courses at many universities and is commonly cited as a reference for algorithms in published papers, with over 10000 citations documented on CiteSeerX. The book sold half a million copies during its first 20 years. Its fame has led to the common use of the abbreviation “CLRS” (Cormen, Leiserson, Rivest, Stein), or, in the first edition, “CLR” (Cormen, Leiserson, Rivest).

In the preface, the authors write about how the book was written to be comprehensive and useful in both teaching and professional environments. Each chapter focuses on an algorithm, and discusses its design techniques and areas of application. Instead of using a specific programming language, the algorithms are written in Pseudocode. The descriptions focus on the aspects of the algorithm itself, its mathematical properties, and emphasize efficiency

• I Foundations
• 1 The Role of Algorithms in Computing
• 2 Getting Started
• 3 Growth of Function
• 4 Divide-and-Conquer
• 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 Tables
• 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
• 18 B-Trees
• 19 Fibonacci Heap
• 20 Van Emde Boas Trees
• 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
• 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
• VIII Appendix: Mathematical Background
• A Summations
• B Sets, Etc.
• C Counting and Probability
• D Matrices
Originally published: 1989
ISBN: 978-0-262-03384-8
Original language: English
Publisher: MIT Press
Page count: 1,312
Size: 5 Mb