A curated collection of essential Data Structures, Algorithms, and Problem-Solving Patterns, implemented in Python.
This repository serves as both a learning reference and a personal toolkit for technical interviews and system design preparation.
✅ Cleanly structured
📊 Includes time and space complexity notes
🚀 Actively expanding with solved LeetCode problems and reusable components
Implementations of core data structures:
linked_list/— Singly and Doubly Linked Listsstack.pyqueue.pyhash_table.pytree/graph/- ...
Key algorithmic techniques:
- Sorting & Searching
- Recursion & Backtracking
- Dynamic Programming
- Greedy Algorithms
- ...
Practice problems organized by topic:
- Arrays, Strings, Trees, Graphs, etc.
- Pattern-based solutions with explanation
Reusable snippets:
- Common for-loops
- Sliding window
- Two pointers
- Recursion templates
big_o.md— Time and space complexity cheat sheet
- Singly Linked List
- Doubly Linked List
- Stack & Queue
- Hash Tables
- Trees (BST, Heap, Trie)
- Graphs (BFS, DFS, Topo Sort)
- Sorting & Searching Algorithms
- Dynamic Programming Patterns
- LeetCode 150 Curated Problems
“Data structures are the bones. Algorithms are the muscles.
Patterns are the brain. Together, they build intelligence.”
Shinde Aditya
Machine Learning Engineer | Systems Thinker | Problem Solver
🌐 www.heyshinde.com
For collaboration, feedback, or opportunities:
📧 Reach me via LinkedIn or my website.
Consider starring the repository. It fuels further contributions and keeps the momentum going.