Algorithms learning recommendations
This page provides subject-specific learning recommendations for the subject algorithms. See all our learning recommendations pages |
Recommendations for learning algorithms proper
Book | Author(s) | ISBN and purchase links | What we're recommending it for |
---|---|---|---|
Introduction to Algorithms (popularly called CLRS after the initials of the authors | Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein | ISBN 978-0262033848, Amazon hardcover | This is a standard comprehensive textbook on algorithms (it also has its own Wikipedia page. Because of its popularity and widespread use, you are also likely to find people to discuss the book with in online communities of people learning algorithms. For instance, there is a Quora topic devoted to the book, and at least two Quora questions of general interest in the topic: here and here. |
Algorithms | Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani | ISBN 978-0073523408, Amazon paperback | This is a somewhat shorter text that covers all the important ideas, so it might be quicker to get through. See also the Amazon reviews of the book. |
Recommendations for learning discrete mathematics with an eye to algorithms
Book | Author(s) | ISBN and purchase links | What we're recommending it for |
---|---|---|---|
Concrete Mathematics: A Foundation for Computer Science (2nd Edition) | Ronald L. Graham, Donald E. Knuth, Oren Patashnik | ISBN 978-0201558029, Amazon hardcover | The "concrete" in the title is an interplay of continuous and discrete. The book is co-authored by an expert at combinatorics and an outstanding computer scientist, so it brings the best minds to bear on the subject. However, chapters 5-7 may not be relevant to computer science in practice, and the book doesn't cover graph theory. |