

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 Poland.
A friendly, fully-illustrated introduction to the most important computer programming algorithms. Master the most widely used algorithms and be fully prepared when youโre asked about them at your next job interview. With beautifully simple explanations, over 400 fun illustrations, and dozens of relevant examples, youโll actually enjoy learning about algorithms with this fun and friendly guide! In Grokking Algorithms, Second Edition you will discover: Search, sort, and graph algorithms Data structures such as arrays, lists, hash tables, trees, and graphs NP-complete and greedy algorithms Performance trade-offs between algorithms Exercises and code samples in every chapter Over 400 illustrations with detailed walkthroughs The first edition of Grokking Algorithms proved to over 100,000 readers that learning algorithms doesn't have to be complicated or boring! This revised second edition contains brand new coverage of trees, including binary search trees, balanced trees, B-trees and more. Youโll also discover fresh insights on data structure performance that takes account of modern CPUs. Plus, the bookโs fully annotated code samples have been updated to Python 3. Foreword by Daniel Zingaro. Purchase of the print book includes a free eBook in PDF and ePub formats from Manning Publications. About the technology The algorithms you use most often have already been discovered, tested, and proven. Grokking Algorithms, Second Edition makes it a breeze to learn, understand, and use them. With beautifully simple explanations, over 400 fun illustrations, and dozens of relevant examples, itโs the perfect way to unlock the power of algorithms in your everyday work and prepare for your next coding interviewโno math required! About the book Grokking Algorithms, Second Edition teaches you important algorithms to speed up your programs, simplify your code, and solve common programming problems. Start with tasks like sorting and searching, then build your skills to tackle advanced problems like data compression and artificial intelligence. Youโll even learn to compare the performance tradeoffs between algorithms. Plus, this new edition includes fresh coverage of trees, NP-complete problems, and code updates to Python 3. What's inside Search, sort, and graph algorithms Data structures such as arrays, lists, hash tables, trees, and graphs NP-complete and greedy algorithms Exercises and code samples in every chapter About the reader No advanced math or programming skills required. 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. Table of Contents 1 Introduction to algorithms 2 Selection sort 3 Recursion 4 Quicksort 5 Hash tables 6 Beadth-first search 7 Trees 8 Balanced trees 9 Dijkstraโs algorithm 10 Greedy algorithms 11 Dynamic programming 12 k-nearest neighbors 13 where to go next Review: Introduces basic cs algorithms in an easy to approach manner. - Excellent book on on algorithms for computer programmers. Introduces basic algorithms in an easy and approachable manner. Review: Excellent book - This book is an excellent resource for beginners and even for those who simply want to refresh their understanding of certain concepts.





| Best Sellers Rank | #30,178 in Books ( See Top 100 in Books ) #4 in Computer Programming Languages #11 in Python Programming #26 in Software Design, Testing & Engineering (Books) |
| Customer Reviews | 4.8 out of 5 stars 253 Reviews |
E**R
Introduces basic cs algorithms in an easy to approach manner.
Excellent book on on algorithms for computer programmers. Introduces basic algorithms in an easy and approachable manner.
J**O
Excellent book
This book is an excellent resource for beginners and even for those who simply want to refresh their understanding of certain concepts.
R**O
Love it
I liked reading this book. I only wish I had this back in college. It is a nice refresh of knowledge. It's quite basic though.
S**M
Fascinating book
Very well written and interesting
A**N
Breadth First Coverage, not Depth First
After going through it, I found that it is an easy-to-read book with great examples. It even surprised me every now and then, as it covered certain topics just as I saw during college, which I found to be great approaches to this day. However, I also feel like the book could have been a bit longer, as it tried to present so much information towards the end, but in a shallow manner. Towards the last 5 chapters, I feel like it increasingly became a rapid-fire presentation of topics, with numerous examples that cover the general algorithm presented, but no deeper dive into it as was the case in previous chapters. Toward the end, it is simply a presentation of algorithms that are a couple of paragraphs long, at best. While it was a great refresher for someone re-visiting these topics, I wish it could have provided me more of that deep dive that I was looking for from a book specialized on the topics it presents. Overall, I do recommend the book to computer science students, or people looking to take a deeper dive into important algorithms and data structures with easy-to-follow examples and some code. However, you will definitely require supplemental reading to achieve a strong foundation on these subjects, and thus would not label it as a "must read", but instead as a "nice to have". Considering the current price, I would probably go with something else before this. As this will probably stand the test of time, it could be a stronger pick at a lower price in the near future.
C**Y
Excellent resource
Excellent resource for those starting their journey to writing mature code.
E**N
Loved it
This book made abstract concepts simple to visualize / grok :) It deserves six out of five stars ! ! !
T**S
Groking Algorithms
Iโve been a developer for 12 years and while I have a solid understanding of what Iโm doing I didnโt really have much knowledge when it came to algorithms. Iโve always read about questions that FANG companies ask and a lot seemed to be around algorithms. So I decided it was time to get a good understanding of the many types of algorithms there are. Iโm about half way through the book but itโs really opened my eyes and realize I could have done things more efficiently if I just knew about these earlier. Definitely recommend to anyone wanting to get a better understanding of algorithms.
A**X
Easy to Follow and Great for Beginners
I donโt have much algorithm experience, so I was nervous about starting this book. It turned out to be really easy to follow. The pictures and simple explanations made it much less confusing than I expected. Each chapter builds up slowly; the examples helped me see how things work. The exercises werenโt too hard, and I liked that the code is in Python, which is beginner-friendly. This is a great place to start if youโre new to this topic and want something that doesnโt feel overwhelming.
E**D
5 estrellas
Antes de leer ya le doy 5 estrellas
P**O
About as good of an introduction as you could possible find.
There is no way around this, this book is incredibly good. It explains some base, yet key, data structures and algorithms in a way to is fairly simple to comprehend; the illustrations allow you to visualize the structure of the data structures in a far more organic way than just looking at a wall of code, while also allowing you to follow step by step the flow of the algorithms. This, completed with the code given, allow you to learn and comprehend fairly quickly the contents inside, and trust me, this book is both an eye opener to a whole new world of incredibly interesting things to learn and demystifies an entire new branch of IT that goes from "impossibly hard" to "it wasn't that bad". Furthermore, when required, the book also explains the underlying computer architecture that favors one type of structure and algorithm based on another. If you read this, you will know why reading from an array is faster than a linked list, but also why writing to it might be incredibly fast or far slower, depending on which situation. Aside from this example, this kind of knowledge allows you to make far more informed decisions. The only slightly negative, but debatable point, is the choice of the language Python. On one hand, this book being in Python instantly becomes accessible to everyone, even without any Python experience grasping the content is incredibly easy. On the other hand, I feel like some concepts will always remain purely hypothetical if you do not have to implement them. For example, the linked list vs array example made before is completely transparent if you use Python, because you do not have to deal with the underlying structure, which is what you care about. Same can be said for hash maps, of course Python, like many other languages and libraries, provides dictionaries, therefore writing your own is useless. However if the entire point is learning how hash maps work, then perhaps writing an implementation and "having to deal with it" is not that bad. Perhaps a less accessible but more practice heavy version of this book in C would be helpful, or at least the reader should try to use a language such as a C to force himself to actually apply the knowledge that some time is purely theoretical of this book. That aside, it's fantastic, and it's a great first algorithm book. It made me pass my interview, allowing me to get a fairly substantial career upgrade, I can't not suggest it.
Z**9
MAJOR PYTHON MISTAKES!!! DO NOT BUY THIS BOOK!
There are multiple serious, and sometimes very basic mistakes in Python code in this book!!! The author uses CamelCase for variables/function names, what the...?! Answers do not contain full/accurate solutions to exercises!! Book looks like totally unreviewed. Stack Overflow is full of reports on mistakes in this book!! I'm going to make a complaint to the publisher after I complete a list of mistakes. DO NOT BUY IT, IT WILL MISLEAD YOU!!!
U**N
Nice shipping, amazing book.
Book has no damage. I have read the first 100 page. Its very informative and beginner friendly. Also its a good practice to see more examples about the topics with chatgpt, gemini or copilot
Trustpilot
3 weeks ago
2 weeks ago