Skip to content
Projects

egonSchiele/grokking_algorithms

View on GitHub

egonSchiele/grokking_algorithms has 13,735 GitHub stars and 4,089 forks. GitHot measured +1 stars in 24 hours. Last checked 2026-11-08 16:59 UTC. Last push 2026-04-12.

How these counts are measured

Code for the book Grokking Algorithms (https://www.amazon.com/dp/1633438538)

Measured star growth

in 24h
+1
in 7 days
Update delayed
in 15 days
Update delayed
in 1 month
Update delayed

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.md

Original

Grokking Algorithms

This is the code in my book Grokking Algorithms.

Check out Python Tutor, a great website that guides you through Python code line by line.

Errata

Here's the errata page.

Images

This repository contains every image in Grokking Algorithms in high resolution. These images are available for non-commercial use. If you use an image, please add "copyright Manning Publications, drawn by adit.io". You are welcome to use these images in any non-commercial materials (i.e. teaching materials, presentations, etc.)

Contributing

Thanks for wanting to contribute to this repo!

If you have found a mistake in the book or have a question, please email me as that will be the best way to get a response. My email is listed on my website, adit.io. If you would like to make a change, please go ahead and open a PR with your suggested change. I am quicker at responding to those than I am to issues.

It takes me a long time to respond to PRs. It's something I'm trying to get better at, but I apologize in advance for how long it will take. I will eventually get to it.

The contributions that are most useful are:

  • fixing errors in existing code
  • adding examples to new languages
  • modernizing code as the language evolves
  • making code easier to read.

I'm less likely to merge code that involves stylistic changes, and I'm very unlikely to merge PRs that add complex optimizations, as the main purpose of this repo is to have easy to read examples that help people understand concepts.

Thanks for contributing and I hope you're enjoying the book!

Explore related projects