Introduction to Algorithms

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Introduction to Algorithms
Cover of the third edition
Author Thomas H. Cormen
Charles E. Leiserson
Ronald L. Rivest
Clifford Stein
Country  United States
Language English
Subject Computer algorithms
Publisher MIT Press
Publication date
1990 (first edition)
Pages 1312
ISBN 978-0-262-03384-8

Introduction to Algorithms is a book by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. The first edition of the book was widely used as the textbook for algorithms courses at many universities[1] and is commonly cited as a reference for algorithms in published papers, with over 10000 citations documented on CiteSeerX.[2] The book sold half a million copies during its first 20 years.[3] 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).[4]

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.[5]


The first edition of the textbook did not include Stein as an author, and thus the book became known by the initialism CLR. It included 2 chapters ("Arithmetic Circuits" & "Algorithms for Parallel Computers") that were dropped in the second edition. After the addition of the fourth author in the second edition, many began to refer to the book as "CLRS". This first edition of the book was also known as "The Big White Book (of Algorithms)." With the second edition, the predominant color of the cover changed to green, causing the nickname to be shortened to just "The Big Book (of Algorithms)."[6] A third edition was published in August 2009. Plans for the next edition started in 2014, but the fourth edition will be published in 2018 the earliest.[7]

Cover design

The mobile depicted on the cover, Big Red (1959) by Alexander Calder, can be found at the Whitney Museum of American Art in New York City.[8]

Table of contents

  • 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
  • V Advanced Data Structures
    • 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
    • 27 Multithreaded Algorithms
    • 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

Publication history

See also


  1. ^ "Introduction to Algorithms". MIT Press. Retrieved 2017-07-02. 
  2. ^ "Introduction to Algorithms—CiteSeerX citation query". CiteSeerX. The College of Information Sciences and Technology at Penn State. Retrieved 2012-05-15. 
  3. ^ Larry Hardesty (August 10, 2011). "Milestone for MIT Press's bestseller". MIT News Office. Retrieved August 16, 2011. 
  4. ^ "Eternally Confuzzled - Red/Black Trees". 
  5. ^ Cormen; Leiserson; Riverst; Stein (2009). "Preface". Introduction to Algorithms (3 ed.). Cambridge, Massachusetts: MIT Press. pp. xiii–xiv. ISBN 978-0-262-03384-8. 
  6. ^ "V-Business Card". 
  7. ^ "When will the Introduction to Algorithms (CLRS) next edition i.e 4th edition will be published and available? - Quora". 
  8. ^ Cormen et al, back cover. See, also, Big Red at the Whitney Museum of American Art web site.
  9. ^ "Introduction to Algorithms, Second Edition". 
  10. ^ "Introduction to Algorithms, Third Edition". 

External links

  • Official websites
    • by MIT Press
  • MIT lecture "MIT 6.046J / 18.410J Introduction to Algorithms - Fall 2005". Held in part by coauthor Charles Leiserson. Released as part of MIT OpenCourseWare.
    • At OCW.MIT.Edu. Video recordings and transcripts of the lectures.
    • At VideoLectures.Net. Video recordings of the lectures. Includes slides automatically synchronized to video content.
  • Exercise Solutions
    • While there are no official solutions, the following may be helpful:
    • Chapters 1 - 11
    • Chapters 13 - 26
    • GitHub
    • CLRS Sols on Gitbooks

Retrieved from ""
This content was retrieved from Wikipedia :
This page is based on the copyrighted Wikipedia article "Introduction to Algorithms"; it is used under the Creative Commons Attribution-ShareAlike 3.0 Unported License (CC-BY-SA). You may redistribute it, verbatim or modified, providing that you comply with the terms of the CC-BY-SA