

Buy anything from 5,000+ international stores. One checkout price. No surprise fees. Join 2M+ shoppers on Desertcart.
Desertcart purchases this item on your behalf and handles shipping, customs, and support to Austria.
🧠 Crack the code of algorithms with visuals that actually stick!
Grokking Algorithms is a bestselling illustrated guide tailored for programmers and curious learners seeking a clear, engaging introduction to algorithms. With a unique visual approach and practical Python examples, it demystifies foundational concepts like sorting, recursion, and big-O notation, making it ideal for self-taught developers and professionals aiming to sharpen their coding skills.















| Best Sellers Rank | 462,624 in Books ( See Top 100 in Books ) 551 in Introduction to Programming |
| Customer Reviews | 4.7 out of 5 stars 1,478 Reviews |
A**R
Painless introduction to algorithms for self-taught developers.
Despite having been a software developer for more years than is socially acceptable, I lack a background in computer science - granted, I have a doctorate in computational physics and can write code for money but I've never had any formal training in the 'fundamentals' of computer science. Let's get something straight: algorithms can be hard, and when you get down to the nitty gritty the source material is drier than a particularly dry thing at midday in the Sahara so anything that attempts to make the concepts more palatable to the self-taught is to be applauded irrespective of whether or not it succeeds. The thought of an illustrated book will, no doubt, make the purists recoil in horror - that's their loss. Sometimes a couple of drawings are far more illuminating than pages full of discrete mathematics, and this is what we have here. This won't be to everyone's tastes - some programming knowledge is assumed, but the fundamentals are discussed in a fluff-free manner with short snippets of code (in Python) to reinforce the points made. The usual suspects are here: starting with binary search, moving up through various sorting and tree/graph algorithms with a brief detour into NP-complete problems such as the travelling salesman and knapsack problem. There's an excellent overview of big-O notation and one of the better explanations of recursion that I've come across - I almost feel that I understand it now. If your background is in 'hard' computer science then there's probably very little here for you - having said that, if you're self-taught or have moved into software development from another discipline then you'll probably learn something. Certainly, I found even the basic stuff to be very illuminating and have started applying some of the concepts to my own code with tangible results. TL;DR - if you've already got a grounding in computer science then look elsewhere- there are plenty of other books on algorithms and algorithmic design that will go into excruciating amounts of detail. If you're not one of these people and want to get up to speed then this may be right up your street - the content is engaging enough that it'll encourage you to read more deeply into the subject.
J**N
Great intro to algorithms
I’ve been using Python for data analysis for a couple of years but don’t have any format computer science training. This is a great introduction to algorithms and also the concepts and benefits of code optimisation. It’s really clearly written, and the pictures help to explain the concepts, that could be quite dry, in easy to understand format. Exercises and examples are all well laid out and easy to follow. Highly recommended.
Y**!
Stunning book for Visual Learners.
After years of University Computer Science, its amazing how little you know about programming. This book is specifically geared towards the visual learner. We want to "see" where we're going, and this book gives you more in the first chapter than an entire year of University education. If you're a visual learner, this book is unique and a must have. There is nothing else on the market that has this approach. You can "see" the point, the logic and how it works, and that's it. You've learnt a "hard concept" and are grinning from ear to ear, as it's taken you 10 minutes.
H**E
Great introduction to algorithms for anybody new to programming
Grokking Algorithms is a great introduction to algorithms for anybody new to programming. What makes the book stand out is its use of pictures to help explain how the algorithms work. Several concepts that aren’t algorithms per se are also explained, for example arrays, linked lists, hash maps and call stacks. The book covers a broad range of algorithms, from basic ones, like binary search and sorting, to more advanced like graph algorithms and dynamic programming. The implementations are given in Python. However, the emphasis is not on the code, but on explaining how the algorithms work. The true test to see if you have understood the content is to write your own implementations of the algorithms. Reading this book is a good first step to that understanding.
E**I
Amazing book!
I bought this book two days ago and it was delivered to Poland today, 3 days earlier than scheduled. I got my book approximately 3 hours ago and I’m already on chapter 3 of the book. It breaks things down to the tiniest bit. It is so easy to understand and isn’t boring. It’s a great way to get into DSA. It gives me hope that I can meet my goal soon.
A**R
Great book on data structures and algorithms that is very easy to understand
Made my way through it all in just a couple of sittings as it was so easy to follow. You might want to look at The Algorithm Design Manual, Cracking the Coding Interview or Introduction to Algorithms if you want the extra depth but this book is a great run through for what you need for a practical application of the concepts in day-to-day programming (and probably most of what you get interviewed on too).
T**K
Excellent overview of useful and practical algorithms and data structures
A great primer on algorithms and data structures. You will gain an understanding of important concepts from the very beginning of the book which you can then apply in your work as a software engineer. The author has clear writing style and balances high- and low-level detail well so that you don't get lost in the information but still feel like you've delved to a reasonable depth in the subject. I highly recommend this book as an introduction to algorithms and data structures!
K**Y
Great book, highly recommend
Got this book to support in study. It is excellent at introducing algorithms in an easy to understand way, and the publishers provide an online version as well. One small point, the early chapters use python2 to demonstrate some of the topics, most current python developers will be using 3+ so if you want to run in a python3 environment you will need to change the syntax in parts.
I**O
The best algorithms and data structures book for those without a computer science background.
If you are new to data structures and algorithms, I guarantee that you find this book a helpful resource with a single caveat: make sure you are the target audience. From the author: "Who should read this book? This book is aimed at anyone who knows the basics of coding and wants to understand algorithms. Maybe you already have a coding problem and are trying to find an algorithmic solution. Or maybe you want to understand what algorithms are useful for. Here’s a short, incomplete list of people who will probably find this book useful: • Hobbyist coders • Coding boot camp students • Computer science grads looking for a refresher • Physics/math/other grads who are interested in programming" In my opinion, the reason this book is so much better than traditional resources on the subject is that the author adheres to a few basic principles that I find fundamental to learning. From the author: "About this book This book is designed to be easy to follow. I avoid big leaps of thought. Any time a new concept is introduced, I explain it right away or tell you when I’ll explain it. Core concepts are reinforced with exercises and multiple explanations so that you can check your assumptions and make sure you’re following along. I lead with examples. Instead of writing symbol soup, my goal is to make it easy for you to visualize these concepts. I also think we learn best by being able to recall something we already know, and examples make recall easier. So when you’re trying to remember the difference between arrays and linked lists (explained in chapter 2), you can just think about getting seated for a movie. Also, at the risk of stating the obvious, I’m a visual learner. This book is chock-full of images. The contents of the book are carefully curated. There’s no need to write a book that covers every sorting algorithm—that’s why we have Wikipedia and Khan Academy. All the algorithms I’ve included are practical. I’ve found them useful in my job as a so ware engineer, and they provide a good foundation for more complex topics." The book starts with simple concrete examples and then moves towards abstraction. Most books on the subject start with abstract mathematical equations (symbol soup as the author calls it) and then move towards concrete implementations (or just stay with abstract proofs). That is approach is completely backwards to me, but perhaps it works well for others.
R**A
A must have at any coding level
The book just arrived and I’m truly amazed. I’m a python developer with 3 years of experience but in my job I never had the opportunity to get in deep with some algorithmical problems or particular structures (that’s probably one of the downsides of coding in Python, with C++ I would have surely needed to learn these in the early stages). So, I’m preparing for an interview and I already had Cracking the coding interview at home (since years!) but I was never able to really get through it without getting bored and dropout, or feeling I was missing something. I bought Grokking algorithms after a youtube recommendation and I feel like I’ve finally found the golden ticket of my learning strategy. This book looks too easy and maybe naive at the beginning but in the second chapter you start getting a real grasp of concepts that were really un-teached in Cracking the Coding interview or similar books. I think it’s super important to first get the large picture and the answers to “why do I need this?” “why did they invented it in the first place?” and THEN get through the serious implementation. This books does it and I’m happy for the purchase! (Above, a comparison of the two books over the same topic)
M**R
Great book for beginners
Grokking Algorithms does a very good job of providing a gentle introduction to algorithms. This is probably one of the best beginner-friendly books about algorithms you can find out there. But If you are already familiar with the topic then this book adds almost nothing to you because you probably already know all the material presented in the book.
S**.
Really good book
Easy to read, easy to understand and to enjoy. Excellent to brush up or reinforce previous knowledge.
R**I
Excellent
Very nicely written and illustrative. It explains algorithms in graphics and easy to follow explanations and simple Python code.
Trustpilot
1 month ago
3 days ago