The books below are hand-picked from university syllabi, competitive programming communities, and industry reading lists. Each title has stood the test of time and earned its place through clarity, depth, or practical value.

Foundational Textbooks

The gold-standard textbooks used in university courses worldwide. Rigorous coverage of algorithm design, analysis, and correctness proofs.

BookAuthorYearLevelDescription
Introduction to Algorithms (CLRS)
4th Edition, MIT Press
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein2022Intermediate-AdvancedThe definitive algorithms textbook used in over 1,000 universities. Covers sorting, graph algorithms, dynamic programming, NP-completeness, and advanced data structures with mathematical proofs and pseudocode. The 4th edition adds new chapters on bipartite matching and online algorithms.
The Algorithm Design Manual
3rd Edition, Springer
Steven S. Skiena2020IntermediateUniquely practical approach combining a textbook with a catalog of 75 algorithmic problems. Includes real-world "war stories" showing how algorithms solved actual engineering challenges. The companion website provides implementations in C, C++, and Java.
Algorithms
4th Edition, Addison-Wesley
Robert Sedgewick, Kevin Wayne2011Beginner-IntermediateClear, example-driven explanations with complete Java implementations. The free companion website at algs4.cs.princeton.edu includes visualizations, auto-graded exercises, and lecture videos from Princeton's Coursera course.
Algorithm Design
1st Edition, Pearson
Jon Kleinberg, Eva Tardos2005IntermediateFocuses on design techniques -- greedy, divide-and-conquer, dynamic programming, network flow -- with emphasis on how to approach new problems. Each chapter builds from motivation to formal analysis. Widely used in graduate-level courses.

Beginner-Friendly

Accessible introductions for those new to algorithms and data structures. Visual aids and clear language make these ideal starting points.

BookAuthorYearLevelDescription
Grokking Algorithms
2nd Edition, Manning
Aditya Y. Bhargava2024BeginnerFully illustrated guide that teaches algorithms through hundreds of hand-drawn diagrams. Covers binary search, BFS/DFS, dynamic programming, and greedy algorithms. Python examples throughout. One of the most recommended first algorithm books on Reddit and Hacker News.
A Common-Sense Guide to Data Structures and Algorithms
2nd Edition, Pragmatic Bookshelf
Jay Wengrow2020BeginnerJargon-free introduction focused on practical decision-making: when and why to use each data structure. Covers arrays, hash tables, stacks, queues, trees, and graphs with real-world performance analysis.
Algorithms Unlocked
MIT Press
Thomas H. Cormen2013BeginnerWritten by the lead author of CLRS for a general audience. No programming prerequisites required. Covers searching, sorting, graph algorithms, string matching, cryptography, and data compression in plain English.

Interview Preparation

Specifically designed for technical interview preparation at top technology companies. Focus on problem-solving patterns and coding under pressure.

BookAuthorYearLevelDescription
Cracking the Coding Interview
6th Edition
Gayle Laakmann McDowell2015IntermediateThe industry standard for interview prep. Contains 189 programming questions with detailed solutions, plus insider advice on the hiring process at Google, Amazon, Facebook, and Microsoft. Covers data structures, algorithms, system design, and behavioral questions.
Elements of Programming Interviews
Available in Java, C++, Python editions
Adnan Aziz, Tsung-Hsien Lee, Amit Prakash2018Intermediate-Advanced300+ problems organized by data structure and algorithm type. Each solution includes multiple approaches with time/space complexity analysis. Harder than CTCI -- recommended after completing that book. Includes a study plan by difficulty and time available.
Programming Interviews Exposed
4th Edition, Wiley
John Mongan, Noah Kindler, Eric Giguere2018Beginner-IntermediateGentler introduction to interview problems than CTCI. Walks through problem-solving strategies step by step, covering linked lists, trees, arrays, sorting, and concurrency. Good first book before tackling harder interview prep material.

Competitive Programming

For competitive programmers preparing for ICPC, Codeforces, Google Code Jam, and similar contests. Heavy focus on speed and problem-solving patterns.

BookAuthorYearLevelDescription
Competitive Programming 4
2-volume set
Steven Halim, Felix Halim, Suhendry Effendy2020Intermediate-AdvancedThe most comprehensive competitive programming resource available. Two volumes covering data structures, graph algorithms, math, geometry, string processing, and advanced techniques. Includes 3,500+ programming exercises with links to online judges (Kattis, UVa, Codeforces).
Guide to Competitive Programming
2nd Edition, Springer (free PDF available)
Antti Laaksonen2020IntermediateConcise and practical guide based on the CSES problem set. Covers graph algorithms, number theory, combinatorics, geometry, and string algorithms. The accompanying CSES.fi website provides 300 practice problems with automated testing. Free PDF available from the author.
Programming Challenges
Springer
Steven S. Skiena, Miguel A. Revilla2003Intermediate110 programming challenges from the ACM ICPC and UVa Online Judge, organized by algorithm type. Each problem includes hints, discussion, and solution approaches. A practical companion to The Algorithm Design Manual.

Advanced and Specialized

Deep dives into specific algorithm domains for researchers, graduate students, and experienced practitioners.

BookAuthorYearLevelDescription
The Art of Computer Programming (TAOCP)
Volumes 1-4B, Addison-Wesley
Donald E. Knuth1968-2023ExpertThe legendary multi-volume masterwork that Bill Gates called "the best [book] in the field." Covers fundamental algorithms with extraordinary mathematical rigor using Knuth's MIX/MMIX assembly language. A lifetime achievement in computer science -- volume 5 is still being written.
Randomized Algorithms
Cambridge University Press
Rajeev Motwani, Prabhakar Raghavan1995AdvancedComprehensive treatment of probabilistic methods in algorithm design. Covers randomized quicksort, hashing, random walks, Markov chains, Monte Carlo and Las Vegas algorithms. Essential reading for understanding modern algorithm design.
Approximation Algorithms
Springer
Vijay V. Vazirani2001AdvancedSystematic study of approximation techniques for NP-hard optimization problems. Covers greedy methods, LP relaxation, primal-dual, semidefinite programming, and hardness of approximation. Used in graduate courses on theoretical CS.
Network Flows
Pearson
Ravindra K. Ahuja, Thomas L. Magnanti, James B. Orlin1993AdvancedThe definitive reference on network flow algorithms. Covers shortest paths, maximum flows, minimum cost flows, assignments, and matchings. Over 150 applications across operations research, logistics, and telecommunications.