Skip to content

Instantly share code, notes, and snippets.

@egonSchiele
Last active July 20, 2018 01:40
Show Gist options
  • Star 26 You must be signed in to star a gist
  • Fork 6 You must be signed in to fork a gist
  • Save egonSchiele/c1ca3e08749169463d37 to your computer and use it in GitHub Desktop.
Save egonSchiele/c1ca3e08749169463d37 to your computer and use it in GitHub Desktop.
Why read Grokking Algorithms?

If you have already taken a course in algorithms, why read Grokking Algorithms (manning.com/bhargava)?

If you were learning graph algorithms, which approach would you prefer:

  1. Imagine you have to take public transit from your home to your office. How do you figure out the fastest route? Use graph algorithms! OR

  2. We can choose between two standard ways to represent a graph G = (V, E): as a collection of adjacency lists or as an adjacency matrix. Either way applies to both directed and undirected graphs.

I prefer the first way: lead with lots of examples, and clear writing. The second way is an excerpt from "Introduction to Algorithms"...that's how they start their section on graph algorithms.

I have spent a lot of time coming up with clear examples for "sticking points". For example, you might still be wondering:

  • What does recursion have to do with the stack?
  • I understand recursion, but I don't know how to come up with a recursive solution to a problem.
  • Why does quicksort run in O(n lg n) time in the average case?
  • How are hash tables implemented?
  • How does dynamic programming work again?
  • What is the difference between breadth-first search and dijkstra's algorithm?

I think the current set of books on algorithms have a problem: they don't teach intermediate topics well. Those topics require a few leaps in thought. A lot of people don't make those leaps of thought and so they are not confident about their grasp of algorithms. I have spent a lot of time making sure there are no leaps of thought required in this book. If you had the same problem I did with other algorithms books, you might find mine easier to read!

Also: this book is not a reference manual. I don't teach you every single sorting algorithm there is, because you don't need that information. This book contains practical knowledge only.

I hope that answers your question! If you find any sticking points, let me know in the forum! I have already gotten a lot of good feedback from there.

@hsavit1
Copy link

hsavit1 commented Oct 22, 2015

just bought your book. looks good!

@etale-cohomology
Copy link

This sounds amazing, I'm gonna try it out!

@nikhilvibhav
Copy link

nikhilvibhav commented Jun 1, 2016

Will it be launching in India as well? I see one is Amazon India but I ridiculously expensive as it is imported.

I wouldn't mind paying for a PDF/eBook version as well.

Copy link

ghost commented Nov 27, 2016

Please launch this in India as well, as the imported version is really expensive

@techyrajeev
Copy link

Need Indian edition desperately. Please launch.

@royzer
Copy link

royzer commented Jan 29, 2017

+1 for the Indian launch.

@Arjun-Mavai
Copy link

Literally this book is amazing , only one thing it is lacking is its price. Please lower the price of this book whole computer science world is going to buy this book.

@int3rlop3r
Copy link

+1 for the Indian Edition!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment