## Notas
De [15 Patterns in DSA - Medium](https://medium.com/@kanishks772/every-dsa-problem-is-just-one-of-these-15-patterns-once-you-see-it-you-cant-unsee-it-2d9deb0fe0e5)
- [[Sliding Window]]
- [[Two Pointers]]
- [[Fast & Slow Pointers]]
- Not really sure, but it's supposed to find linked cycles
- [[Binary Search]]
- [[Breadth First Search]]
- [[Depth First Search]]
- [[Backtracking]]
- Find all combinations & recursion
- [[Dynamic Programming]]
- [[Greedy Algorithm]]
- [[Union-Find]]
- ??
- [[Topological Sort]]
- Graph traversal
- [[Prefix Sum & Difference Array]]
- [[Monotonic Stack & Queue]]
- [[Bit Manipulation]]
- [[Trie]]
- [[Heap & Priority Queue]]
When you see a problem, ask:
1. **Contiguous sequence?** → Sliding Window
2. **Sorted array, compare ends?** → Two Pointers
3. **Cycle detection?** → Fast & Slow
4. **Sorted/search space?** → Binary Search
5. **Tree/graph traversal?** → BFS/DFS
6. **All possibilities?** → Backtracking
7. **Optimization + subproblems?** → DP
8. **Local optimum = global?** → Greedy
## Referencias
- [[DSA Study MOC]]