01 / Classic Textbook Recommendation
Classic Textbook Recommendation
Who this book is for
First-year computing students who want an accessible preview of an algorithms course, and students from other subjects who need to understand what algorithms do and how their efficiency is measured. It also suits programmers without formal training who want the core ideas before tackling a full textbook with proofs and exercises.
Prerequisites
Comfort with school algebra and simple logical reasoning; some programming experience helps but is not required.
What it covers
What algorithms are and how running time is described; searching and sorting, including selection, insertion, merge and quick sort; a lower bound for comparison sorting; directed acyclic graphs and topological sorting; shortest paths with Dijkstra's and Bellman-Ford algorithms; string algorithms such as longest common subsequence and pattern matching; foundations of cryptography, including RSA; data compression, including Huffman coding; and an introduction to NP-completeness and hard problems.
How to use it
Read it straight through before or at the start of an algorithms course, tracing the pseudocode by hand on small examples. Return to individual chapters when the corresponding topic comes up in lectures, then move on to a full textbook for proofs, analysis techniques and problem sets.
Edition and sources
First and only edition, published in paperback by MIT Press in March 2013 (ISBN 9780262518802); no revised edition has appeared. Bibliographic data for this record comes from Readings Books, an Australian bookseller catalogue.