Grokking Algorithms

An illustrated guide for programmers and other curious people
Aditya Y. Bhargava
  • May 2016
  • ISBN 9781617292231
  • 256 pages
  • printed in black & white
  • Available translations: Complex Chinese, French, German, Italian, Japanese, Korean, Polish, Portuguese, Russian, Simplified Chinese, Spanish, Ukrainian
Look inside

Grokking Algorithms is a fully illustrated, friendly guide that teaches you how to apply common algorithms to the practical problems you face every day as a programmer. You'll start with sorting and searching and, as you build up your skills in thinking algorithmically, you'll tackle more complex concerns such as data compression and artificial intelligence. Each carefully presented example includes helpful diagrams and fully annotated code samples in Python.

Learning about algorithms doesn't have to be boring! Get a sneak peek at the fun, illustrated, and friendly examples you'll find in Grokking Algorithms on YouTube.

If you want to get more from the classic algorithms inside this book then be sure to check out Algorithms in Motion. Together this book and video course make the perfect duo.

about the technology

An algorithm is nothing more than a step-by-step procedure for solving a problem. The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to understand them but refuse to slog through dense multipage proofs, this is the book for you. This fully illustrated and engaging guide makes it easy to learn how to use the most important algorithms effectively in your own programs.

about the book

Grokking Algorithms is a friendly take on this core computer science topic. In it, you'll learn how to apply common algorithms to the practical programming problems you face every day. You'll start with tasks like sorting and searching. As you build up your skills, you'll tackle more complex problems like data compression and artificial intelligence. Each carefully presented example includes helpful diagrams and fully annotated code samples in Python. By the end of this book, you will have mastered widely applicable algorithms as well as how and when to use them.

what's inside

  • Covers search, sort, and graph algorithms
  • Over 400 pictures with detailed walkthroughs
  • Performance trade-offs between algorithms
  • Python-based code samples

about the reader

This easy-to-read, picture-heavy introduction is suitable for self-taught programmers, engineers, or anyone who wants to brush up on algorithms.

about the author

Aditya Bhargava is a Software Engineer with a dual background in Computer Science and Fine Arts. He blogs on programming at adit.io.

This book does the impossible: it makes math fun and easy!

Sander Rossel, COAS Software Systems

Do you want to treat yourself to learning algorithms in the same way that you would read your favorite novel? If so, this is the book you need!

Sankar Ramanathan, IBM Analytics

In today’s world, there is no aspect of our lives that isn’t optimized by some algorithm. Let this be the first book you pick up if you want a well-explained introduction to the topic.

Amit Lamba, Tech Overture, LLC

Algorithms are not boring! This book was fun and insightful for both my students and me.

Christopher Haupt, Mobirobo, Inc
4.8
Out of 5.0
A graph showing this site's review totals.
Overall Rating
96%
of customers that
buy this product give
it a 4 or 5-Star rating.
Verified Buyer
“Great price”
Great book
March 15, 2025 by Georgi (Plovdiv, BG)
“Great book”
Company Choice
Good books
Product Choice
Learn go
Verified Buyer
“Great buy”
December 14, 2024 by Oscar P. (CO)
“Great!”
Verified Buyer
“Great buy”
November 25, 2024 by A Reviewer (United Kingdom)
“Book is really informative and accessible.”
Verified Buyer
“Great value”
Help for interview preparation
August 27, 2024 by Guy C. (CA, US)
“Quick read. Helps for interview preparation.”
Company Choice
Usually good value for money.
Product Choice
Interview preparation
Verified Buyer
“Great buy”
For the algorithm challenged
July 31, 2024 by A Reviewer (DE)
“Most of the time getting good resources is tricky for topics such as these unless someone probably coming from an academic perspective. This book collates a lot of it.”

loading book ...