DSA Patterns
20 patterns · ordered easy → hard · click a row to practice
Two Pointers
(2)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Two Pointers | easy | View |
| 2 | Fast and Slow Pointers | easy | View |
Sliding Window
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Sliding Window | easy | View |
Hashing
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | HashMap and HashSet | easy | View |
Mathematics
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Math | easy | View |
Binary Search Trees
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Binary Search | easy | View |
Trees
(2)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Tree Traversals | easy | View |
| 2 | Trie | medium | View |
Searching
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Depth First Search | medium | View |
Queues
(2)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Breadth First Search | medium | View |
| 2 | Heap and Priority Queue | medium | View |
Greedy Algorithms
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Greedy | medium | View |
Stacks
(2)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Backtracking | medium | View |
| 2 | Monotonic Stack | medium | View |
Divide and Conquer
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Divide and Conquer | medium | View |
Topological Sort
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Topological Sort | medium | View |
Union Find
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Union Find | medium | View |
Shortest Path
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Shortest Path | hard | View |
Dynamic Programming
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Dynamic Programming | hard | View |
Bit Manipulation
(1)| # | Pattern | Difficulty | |
|---|---|---|---|
| 1 | Bit Manipulation | medium | View |