Solving leetcode problems on the side to keep the mind fresh - starting each problem with a brute force approach & optimize along the way.
- Array
- Backtracking
- Binary Search
- Binary Search Tree
- Bit Manipulation
- Breadth-First-Search
- Combination/Permutation
- Depth-First-Search
- Divide And Conquer
- Dynamic Programming
- Design
- Graph
- Greedy
- HashMap/HashSet
- Iterator
- Linked List
- Math
- Matrix
- Minimax
- Pigeon Hole
- Prefix/Suffix Sum
- Priority Queue
- Reservoir Sampling
- Simulation
- Sliding Window
- Sorting
- Stack
- String
- Topological Sort
- Tree
- Trie
- Two Pointers
- Union Find