This Git repository is dedicated to problem-solving through coding patterns. The purpose of this repository is to develop and share a collection of coding patterns that can be applied to a wide variety of programming challenges. I hope to make it easy to find and apply the appropriate pattern for a given problem.
- Sliding Window
- Islands (Matrix Traversal)
- Two Pointers
- Fast & Slow Pointers
- Merge Intervals
- Cyclic Sort
- In-place Reversal of a LinkedList
- Tree Breadth-First Search
- Tree Depth First Search
- Two Heaps
- Subsets
- Modified Binary Search
- Bitwise XOR
- Top ‘K’ Elements
- K-way Merge
- 0/1 Knapsack
- Unbounded Knapsack
- Fibonacci Numbers
- Palindromic Subsequence
- Longest Common Substring
- Topological Sort
- Backtracking
- Multi-threaded
- Hashing