This repository is a personal study log based on the book "Grokking Algorithms" by Aditya Bhargava.
As part of my learning journey, I β Dmitry Bazhenov β decided to thoroughly document and implement the core ideas, algorithms, and code examples found throughout the book. This includes Python implementations of key algorithms as presented by the author, along with some accompanying data structures and additional clarifying comments.
β οΈ Disclaimer:
I do not claim authorship of the algorithms or explanations from the book. All implementations are based on the educational material authored by Aditya Bhargava. This repository is created solely for learning purposes, and I do not assert any intellectual property over the original content.
- Step-by-step code implementations in Python
- Clean and readable algorithm breakdowns
- Algorithms such as:
- Binary Search
- Selection Sort
- Recursion Examples
- Quicksort
- Hash Tables
- Breadth-First Search
- Dijkstraβs Algorithm
- Greedy Algorithms
- Dynamic Programming (e.g., the Knapsack problem)
- and more...
This repository is intended to:
- Help reinforce my understanding of algorithmic thinking.
- Serve as a reference for anyone else studying the book.
- Encourage others to document their own learning in a structured and respectful way.
Grokking Algorithms: An illustrated guide for programmers and other curious people
Author: Aditya Bhargava
Publisher: Manning Publications
Feel free to star β the repo if you find it useful in your own learning path!