Skip to content

Latest commit

Β 

History

History
584 lines (502 loc) Β· 34.3 KB

File metadata and controls

584 lines (502 loc) Β· 34.3 KB

πŸ“Š DSA Problems Index β€” 398 Problems

Complete list of all solved problems across all patterns. Main Notes: README.md


Summary

Total Easy Medium Hard
398 90 236 72

Two Pointers (20 problems)

Easy: 9 | Medium: 10 | Hard: 1

# Problem LC # Sub-Pattern Difficulty
1 Pair with Target Sum (2Sum II) 167 Two Pointers β€” Both-ends Sum 🟒 Easy
2 Triplet Sum to Zero (3Sum) 15 Two Pointers β€” Both-ends Sum 🟑 Medium
3 3Sum Closest 16 Two Pointers β€” Both-ends Sum 🟑 Medium
4 Triplets with Smaller Sum β€” Two Pointers β€” Both-ends Sum 🟑 Medium
5 Quadruple Sum to Target (4Sum) 18 Two Pointers β€” Both-ends Sum 🟑 Medium
6 Valid Palindrome 125 Two Pointers β€” Both-ends Palindrome 🟒 Easy
7 Reverse Vowels of a String 345 Two Pointers β€” Both-ends Swap 🟒 Easy
8 Squares of a Sorted Array 977 Two Pointers β€” Both-ends Fill 🟒 Easy
9 Remove Duplicates from Sorted Array 26 Two Pointers β€” Slow/Fast 🟒 Easy
10 Rearrange 0s and 1s β€” Two Pointers β€” Slow/Fast 🟒 Easy
11 Comparing Strings with Backspaces 844 Two Pointers β€” Reverse Traversal 🟑 Medium
12 Sort Colors (Dutch National Flag) 75 Two Pointers β€” 3-pointer 🟑 Medium
13 Merge Sorted Array 88 Two Pointers β€” Two Arrays 🟒 Easy
14 Is Subsequence 392 Two Pointers β€” Two Arrays 🟒 Easy
15 Subarrays with Product Less than K 713 Two Pointers β€” Window/Count 🟑 Medium
16 Minimum Window Sort 581 Two Pointers β€” Both-ends Scan 🟑 Medium
17 Remove Palindromic Subsequences 1332 Two Pointers β€” Palindrome Check 🟒 Easy
18 Reverse Words in a String 151 Two Pointers β€” Both-ends Swap 🟑 Medium
19 Trapping Rain Water 42 Two Pointers β€” Both-ends Water πŸ”΄ Hard
20 Container with Most Water 11 Two Pointers β€” Both-ends Area 🟑 Medium

Sliding Window (21 problems)

Easy: 2 | Medium: 14 | Hard: 5

# Problem LC # Sub-Pattern Difficulty
138 Maximum Sum Subarray of Size K β€” Sliding Window β€” Fixed 🟒 Easy
139 Maximum Average Subarray I 643 Sliding Window β€” Fixed 🟒 Easy
140 Permutation in a String 567 Sliding Window β€” Fixed 🟑 Medium
141 Find All Anagrams in a String 438 Sliding Window β€” Fixed 🟑 Medium
142 Longest Substring Without Repeating 3 Sliding Window β€” Variable Maximize 🟑 Medium
143 Longest Substring K Distinct 340 Sliding Window β€” Variable Maximize 🟑 Medium
144 Fruits into Baskets 904 Sliding Window β€” Variable Maximize 🟑 Medium
145 Longest Repeating Char Replacement 424 Sliding Window β€” Variable Maximize πŸ”΄ Hard
146 Max Consecutive Ones III 1004 Sliding Window β€” Variable Maximize 🟑 Medium
147 Longest Subarray of 1s (Delete One) 1493 Sliding Window β€” Variable Maximize 🟑 Medium
148 Get Equal Substrings Within Budget 1208 Sliding Window β€” Variable Maximize 🟑 Medium
149 Minimum Size Subarray Sum 209 Sliding Window β€” Variable Minimize 🟑 Medium
150 Minimum Window Substring 76 Sliding Window β€” Variable Minimize πŸ”΄ Hard
151 Subarray Product Less Than K 713 Sliding Window β€” Variable Count 🟑 Medium
152 Subarrays with K Different Integers 992 Sliding Window β€” At-Most Trick πŸ”΄ Hard
153 Binary Subarrays with Sum 930 Sliding Window β€” At-Most Trick 🟑 Medium
154 Count Number of Nice Subarrays 1248 Sliding Window β€” At-Most Trick 🟑 Medium
155 Substring with Concatenation of Words 30 Sliding Window β€” FAANG Hard πŸ”΄ Hard
156 Frequency of Most Frequent Element 1838 Sliding Window β€” FAANG Hard 🟑 Medium
157 Maximize the Confusion of an Exam 2024 Sliding Window β€” FAANG Hard 🟑 Medium
158 Min Ops to Make Array Continuous 2009 Sliding Window β€” FAANG Hard πŸ”΄ Hard

Slow & Fast (23 problems)

Easy: 6 | Medium: 15 | Hard: 2

# Problem LC # Sub-Pattern Difficulty
83 LinkedList Cycle 141 Slow & Fast β€” Cycle Detection 🟒 Easy
84 Start of LinkedList Cycle 142 Slow & Fast β€” Cycle Start 🟑 Medium
85 Happy Number 202 Slow & Fast β€” Implicit Cycle 🟑 Medium
86 Find the Duplicate Number 287 Slow & Fast β€” Implicit Cycle 🟑 Medium
87 Middle of the LinkedList 876 Slow & Fast β€” Find Middle 🟒 Easy
88 Palindrome LinkedList 234 Slow & Fast β€” Middle + Reverse 🟑 Medium
89 Reorder List 143 Slow & Fast β€” Middle + Reverse + Merge 🟑 Medium
90 Cycle in a Circular Array 457 Slow & Fast β€” Implicit Cycle (Array) πŸ”΄ Hard
91 Remove Nth Node From End 19 Slow & Fast β€” Gap Technique 🟑 Medium
92 Intersection of Two Lists 160 Slow & Fast β€” Redirect Technique 🟒 Easy
93 Odd Even Linked List 328 Slow & Fast β€” Pointer Rearrangement 🟑 Medium
94 String Compression 443 Slow & Fast β€” Slow Write / Fast Read 🟑 Medium
95 Remove Duplicates from Sorted Array 26 Slow & Fast β€” Slow Write / Fast Read 🟒 Easy
96 Remove Duplicates from Sorted Array II 80 Slow & Fast β€” Slow Write / Fast Read 🟑 Medium
97 Duplicate Zeros 1089 Slow & Fast β€” Slow Write / Fast Read 🟒 Easy
98 Rotate List 61 Slow & Fast β€” Rotate / Reconnect 🟑 Medium
99 Rotate Array 189 Slow & Fast β€” Rotate / Reconnect 🟑 Medium
100 Partition Labels 763 Slow & Fast β€” Two-pointer String 🟑 Medium
101 Counting Binary Substrings 696 Slow & Fast β€” Two-pointer String 🟒 Easy
102 Last Substring in Lexicographical Order 1163 Slow & Fast β€” Two-pointer String πŸ”΄ Hard
103 Sort List 148 Slow & Fast β€” Middle + Merge Sort 🟑 Medium
104 Number of Subarrays with Bounded Maximum 795 Slow & Fast β€” Two-pointer Count 🟑 Medium
105 K-diff Pairs in an Array 532 Slow & Fast β€” Two-pointer Sorted 🟑 Medium

Kadane (12 problems)

Easy: 3 | Medium: 7 | Hard: 2

# Problem LC # Sub-Pattern Difficulty
159 Maximum Subarray Sum 53 Kadane β€” Classic 🟒 Easy
160 Minimum Subarray Sum β€” Kadane β€” Classic 🟒 Easy
161 Maximum Product Subarray 152 Kadane β€” Product 🟑 Medium
162 Maximum Sum Circular Subarray 918 Kadane β€” Circular 🟑 Medium
163 Best Time to Buy and Sell Stock 121 Kadane β€” Stock 🟒 Easy
164 Max Subarray Sum with One Deletion 1186 Kadane β€” With State 🟑 Medium
165 Longest Subarray with Positive Sum β€” Kadane β€” Prefix Sum 🟑 Medium
166 Maximum Absolute Sum of Any Subarray 1749 Kadane β€” Dual 🟑 Medium
167 House Robber 198 Kadane β€” Non-Adjacent DP 🟑 Medium
168 Max Sum Rectangle in 2D Matrix 363 Kadane β€” 2D πŸ”΄ Hard
169 Max Sum Submatrix No Larger Than K 363 Kadane β€” 2D + Binary Search πŸ”΄ Hard
170 Maximum Alternating Subarray Sum 2036 Kadane β€” Alternating 🟑 Medium

Prefix Sum (12 problems)

Easy: 2 | Medium: 7 | Hard: 3

# Problem LC # Sub-Pattern Difficulty
171 Range Sum Query - Immutable 303 Prefix Sum β€” Basic Prefix Array 🟒 Easy
172 Find Pivot Index 724 Prefix Sum β€” Basic Prefix Array 🟒 Easy
173 Subarray Sum Equals K 560 Prefix Sum β€” HashMap Count 🟑 Medium
174 Contiguous Array 525 Prefix Sum β€” HashMap Remap 🟑 Medium
175 Longest Subarray with Sum K 325 Prefix Sum β€” HashMap First-seen 🟑 Medium
176 Subarray Sums Divisible by K 974 Prefix Sum β€” Modulo HashMap 🟑 Medium
177 Continuous Subarray Sum 523 Prefix Sum β€” Modulo HashMap 🟑 Medium
178 Range Sum Query 2D - Immutable 304 Prefix Sum β€” 2D Prefix Array 🟑 Medium
179 Max Sum of Rectangle No Larger Than K 363 Prefix Sum β€” 2D Prefix + TreeSet πŸ”΄ Hard
180 Shortest Subarray with Sum at Least K 862 Prefix Sum β€” Prefix + Deque πŸ”΄ Hard
181 Count of Range Sum 327 Prefix Sum β€” Prefix + Merge Sort πŸ”΄ Hard
182 Maximum Product Subarray 152 Prefix Sum β€” Prefix Product 🟑 Medium

Merge Interval (13 problems)

Easy: 1 | Medium: 8 | Hard: 4

# Problem LC # Sub-Pattern Difficulty
183 Merge Intervals 56 Merge Interval β€” Sort + Scan 🟑 Medium
184 Insert Interval 57 Merge Interval β€” 3-Phase Insert 🟑 Medium
185 Interval List Intersections 986 Merge Interval β€” Two-pointer 🟑 Medium
186 Overlapping Intervals Check β€” Merge Interval β€” Sort + Adjacent 🟒 Easy
187 Minimum Meeting Rooms 253 Merge Interval β€” Min-Heap πŸ”΄ Hard
188 Maximum CPU Load β€” Merge Interval β€” Min-Heap πŸ”΄ Hard
189 Task Scheduler 621 Merge Interval β€” Max-Heap + Greedy 🟑 Medium
190 Non-overlapping Intervals 435 Merge Interval β€” Greedy Sort End 🟑 Medium
191 Min Arrows to Burst Balloons 452 Merge Interval β€” Greedy Sort End 🟑 Medium
192 Meeting Scheduler 1229 Merge Interval β€” Two-pointer 🟑 Medium
193 Employee Free Time 759 Merge Interval β€” Merge + Gap Scan πŸ”΄ Hard
194 Remove Covered Intervals 1288 Merge Interval β€” Sort + maxEnd 🟑 Medium
195 Data Stream as Disjoint Intervals 352 Merge Interval β€” TreeMap Merge πŸ”΄ Hard

Stack (31 problems)

Easy: 8 | Medium: 17 | Hard: 6

# Problem LC # Sub-Pattern Difficulty
21 Next Greater Element I 496 Stack β€” Monotonic 🟒 Easy
22 Daily Temperatures 739 Stack β€” Monotonic 🟑 Medium
23 Next Greater Element II (Circular) 503 Stack β€” Monotonic 🟑 Medium
24 Stock Span Problem 901 Stack β€” Monotonic 🟑 Medium
25 Online Stock Span 901 Stack β€” Monotonic Design 🟑 Medium
26 Largest Rectangle in Histogram 84 Stack β€” Monotonic πŸ”΄ Hard
27 Trapping Rain Water 42 Stack β€” Monotonic πŸ”΄ Hard
28 Sum of Subarray Minimums 907 Stack β€” Monotonic 🟑 Medium
29 Remove Nodes From Linked List 2487 Stack β€” Monotonic 🟑 Medium
30 Valid Parentheses 20 Stack β€” Bracket Match 🟒 Easy
31 Minimum Remove to Make Valid 1249 Stack β€” Bracket Match 🟑 Medium
32 Longest Valid Parentheses 32 Stack β€” Bracket Match πŸ”΄ Hard
33 Score of Parentheses 856 Stack β€” Bracket Score 🟑 Medium
34 Remove All Adjacent Duplicates I 1047 Stack β€” Removal 🟒 Easy
36 Backspace String Compare 844 Stack β€” Simulation 🟒 Easy
37 Removing Stars From a String 2390 Stack β€” Simulation 🟑 Medium
38 Remove Duplicate Letters 316 Stack β€” Monotonic + Greedy πŸ”΄ Hard
39 Remove K Digits 402 Stack β€” Monotonic + Greedy 🟑 Medium
40 Evaluate Reverse Polish Notation 150 Stack β€” Expression 🟑 Medium
41 Basic Calculator II 227 Stack β€” Expression 🟑 Medium
42 Basic Calculator 224 Stack β€” Expression πŸ”΄ Hard
43 Decode String 394 Stack β€” Save/Restore 🟑 Medium
44 Simplify Path 71 Stack β€” Simulation 🟑 Medium
45 Asteroid Collision 735 Stack β€” Conditional 🟑 Medium
46 Baseball Game 682 Stack β€” Simulation 🟒 Easy
47 Reverse String Using Stack β€” Stack β€” Basic 🟒 Easy
48 Min Stack 155 Stack β€” Design 🟑 Medium
49 Implement Queue Using Stacks 232 Stack β€” Design 🟒 Easy
50 Implement Stack Using Queues 225 Stack β€” Design 🟒 Easy
51 Design Browser History 1472 Stack β€” Design 🟑 Medium
52 Maximum Frequency Stack 895 Stack β€” Design πŸ”΄ Hard

Stack + Count (1 problems)

Easy: 0 | Medium: 1 | Hard: 0

# Problem LC # Sub-Pattern Difficulty
35 Remove All Adjacent Duplicates II 1209 Stack + Count 🟑 Medium

HashMap (16 problems)

Easy: 10 | Medium: 6 | Hard: 0

# Problem LC # Sub-Pattern Difficulty
53 Two Sum 1 HashMap β€” Complement Lookup 🟒 Easy
54 Valid Anagram 242 HashMap β€” Frequency Count 🟒 Easy
55 First Non-Repeating Character 387 HashMap β€” Frequency Count 🟒 Easy
56 Maximum Number of Balloons 1189 HashMap β€” Frequency Count 🟒 Easy
57 Longest Palindrome 409 HashMap β€” Frequency Count 🟒 Easy
58 Ransom Note 383 HashMap β€” Frequency Count 🟒 Easy
59 Subarray Sum Equals K 560 HashMap β€” Prefix Sum 🟑 Medium
60 Longest Substring Without Repeating 3 HashMap β€” Index Tracking 🟑 Medium
61 Group Anagrams 49 HashMap β€” Grouping 🟑 Medium
62 Top K Frequent Elements 347 HashMap β€” Frequency Count 🟑 Medium
63 Jewels and Stones 771 HashMap β€” HashSet Lookup 🟒 Easy
64 Isomorphic Strings 205 HashMap β€” Two-Map Bidirectional 🟒 Easy
65 Word Pattern 290 HashMap β€” Two-Map Bidirectional 🟒 Easy
66 Contains Duplicate II 219 HashMap β€” Index Tracking 🟒 Easy
67 Longest Consecutive Sequence 128 HashMap β€” HashSet + Sequence 🟑 Medium
68 LRU Cache 146 HashMap β€” Design (LinkedHashMap) 🟑 Medium

In-Place Reversal (14 problems)

Easy: 3 | Medium: 9 | Hard: 2

# Problem LC # Sub-Pattern Difficulty
69 Reverse a LinkedList 206 In-Place Reversal β€” Full 🟒 Easy
70 Reverse a Sub-list 92 In-Place Reversal β€” Partial 🟑 Medium
71 Reverse List in Pairs 24 In-Place Reversal β€” K-Group k=2 🟑 Medium
72 Reverse Every K-element Sub-list 25 In-Place Reversal β€” K-Group πŸ”΄ Hard
73 Reverse Nodes in Even Length Groups 2074 In-Place Reversal β€” Conditional πŸ”΄ Hard
74 Rotate a LinkedList 61 In-Place Reversal β€” Rotation 🟑 Medium
75 Reverse Alternate K Elements β€” In-Place Reversal β€” Alternate K 🟑 Medium
76 Palindrome LinkedList 234 In-Place Reversal β€” Tool 🟒 Easy
77 Reorder List 143 In-Place Reversal β€” Tool 🟑 Medium
78 Sort List 148 In-Place Reversal β€” Merge Sort 🟑 Medium
79 Remove Nth Node From End 19 In-Place Reversal β€” Gap Technique 🟑 Medium
80 Add Two Numbers 2 In-Place Reversal β€” Simulation 🟑 Medium
81 Copy List with Random Pointer 138 In-Place Reversal β€” Clone 🟑 Medium
82 Merge Two Sorted Lists 21 In-Place Reversal β€” Merge 🟒 Easy

Binary Search (32 problems)

Easy: 6 | Medium: 20 | Hard: 6

# Problem LC # Sub-Pattern Difficulty
106 Binary Search 704 Binary Search β€” Basic 🟒 Easy
107 Search Insert Position 35 Binary Search β€” Upper Bound 🟒 Easy
108 First and Last Position 34 Binary Search β€” Boundary Search 🟑 Medium
109 Count Occurrences in Sorted Array β€” Binary Search β€” Counting 🟒 Easy
110 Search in Infinite Sorted Array β€” Binary Search β€” Exponential + BS 🟑 Medium
111 Peak Index in Mountain Array 852 Binary Search β€” Bitonic 🟒 Easy
112 Search in Bitonic Array β€” Binary Search β€” Bitonic 🟑 Medium
113 Find Peak Element 162 Binary Search β€” Bitonic 🟑 Medium
114 Find Minimum in Rotated Sorted Array 153 Binary Search β€” Range Search 🟑 Medium
115 Find Number of Rotations β€” Binary Search β€” Range Search 🟒 Easy
116 Search in Rotated Sorted Array 33 Binary Search β€” Range Search 🟑 Medium
117 Find Min in Rotated II (Duplicates) 154 Binary Search β€” Range Search πŸ”΄ Hard
118 Search in Rotated II (Duplicates) 81 Binary Search β€” Range Search 🟑 Medium
119 Single Element in Sorted Array 540 Binary Search β€” Parity 🟑 Medium
120 Koko Eating Bananas 875 Binary Search β€” Allocate 🟑 Medium
121 Min Days to Make M Bouquets 1482 Binary Search β€” Allocate 🟑 Medium
122 Aggressive Cows β€” Binary Search β€” Allocate 🟑 Medium
123 H-Index II 275 Binary Search β€” Allocate 🟑 Medium
124 Maximum Candies to K Children 2226 Binary Search β€” Allocate 🟑 Medium
125 Capacity to Ship in D Days 1011 Binary Search β€” Allocate 🟑 Medium
126 Book Allocation Problem β€” Binary Search β€” Allocate πŸ”΄ Hard
127 Split Array Largest Sum 410 Binary Search β€” Allocate πŸ”΄ Hard
128 Minimum Speed to Arrive on Time 1870 Binary Search β€” Allocate 🟑 Medium
129 Minimize Max Gas Station Distance 774 Binary Search β€” Allocate πŸ”΄ Hard
130 Search a 2D Matrix 74 Binary Search β€” 2D 🟑 Medium
131 Search a 2D Matrix II 240 Binary Search β€” 2D (Staircase) 🟑 Medium
132 Kth Smallest in Sorted Matrix 378 Binary Search β€” Kth Element 🟑 Medium
133 Kth Smallest in Multiplication Table 668 Binary Search β€” Kth Element πŸ”΄ Hard
134 Median of Two Sorted Arrays 4 Binary Search β€” Partition πŸ”΄ Hard
135 Kth Missing Positive Number 1539 Binary Search β€” Missing Count 🟒 Easy
136 Time Based Key-Value Store 981 Binary Search β€” FAANG 🟑 Medium
137 Find K Closest Elements 658 Binary Search β€” FAANG 🟑 Medium

Cyclic Sort (12 problems)

Easy: 7 | Medium: 2 | Hard: 3

# Problem LC # Sub-Pattern Difficulty
196 Cyclic Sort β€” Cyclic Sort β€” Core 🟒 Easy
197 Find the Missing Number 268 Cyclic Sort β€” Missing 🟒 Easy
198 Find All Missing Numbers 448 Cyclic Sort β€” All Missing 🟒 Easy
199 Find the Duplicate Number 287 Cyclic Sort β€” Duplicate 🟑 Medium
200 Find All Duplicate Numbers 442 Cyclic Sort β€” All Duplicates 🟑 Medium
201 Find the Corrupt Pair β€” Cyclic Sort β€” Combined 🟒 Easy
202 Smallest Missing Positive Number 41 Cyclic Sort β€” Missing Positive πŸ”΄ Hard
203 First K Missing Positive Numbers β€” Cyclic Sort β€” K Missing πŸ”΄ Hard
204 Set Mismatch 645 Cyclic Sort β€” Combined 🟒 Easy
205 Find All Numbers Disappeared 448 Cyclic Sort β€” All Missing 🟒 Easy
206 First Missing Positive 41 Cyclic Sort β€” Missing Positive πŸ”΄ Hard
207 Missing Number (XOR/Math) 268 Cyclic Sort β€” Missing (Multi-approach) 🟒 Easy

Heap (25 problems)

Easy: 4 | Medium: 14 | Hard: 7

# Problem LC # Sub-Pattern Difficulty
208 Kth Largest Element in an Array 215 Heap β€” Kth Element 🟑 Medium
209 Kth Smallest Element in Sorted Matrix 378 Heap β€” Kth Element 🟑 Medium
210 Kth Largest Element in a Stream 703 Heap β€” Kth Element Design 🟒 Easy
211 Kth Weakest Row in a Matrix 1337 Heap β€” Kth Element 🟒 Easy
212 Top K Frequent Elements 347 Heap β€” Top K 🟑 Medium
213 Top K Frequent Words 692 Heap β€” Top K 🟑 Medium
214 Sort Characters By Frequency 451 Heap β€” Top K 🟑 Medium
215 K Closest Points to Origin 973 Heap β€” Top K 🟑 Medium
216 Find K Closest Elements 658 Heap β€” Top K 🟑 Medium
217 Merge K Sorted Lists 23 Heap β€” Merge K πŸ”΄ Hard
218 Merge K Sorted Arrays β€” Heap β€” Merge K 🟑 Medium
219 K Pairs with Smallest Sums 373 Heap β€” Merge K 🟑 Medium
220 Smallest Range Covering K Lists 632 Heap β€” Merge K πŸ”΄ Hard
221 Find Median from Data Stream 295 Heap β€” Two Heaps πŸ”΄ Hard
222 Sliding Window Median 480 Heap β€” Two Heaps πŸ”΄ Hard
223 Task Scheduler 621 Heap β€” Greedy 🟑 Medium
224 Reorganize String 767 Heap β€” Greedy 🟑 Medium
225 Last Stone Weight 1046 Heap β€” Greedy 🟒 Easy
226 IPO 502 Heap β€” Greedy πŸ”΄ Hard
227 Course Schedule III 630 Heap β€” Greedy πŸ”΄ Hard
228 Minimum Number of Refueling Stops 871 Heap β€” Greedy πŸ”΄ Hard
229 Design Twitter 355 Heap β€” Design 🟑 Medium
230 Design Food Rating System 2353 Heap β€” Design 🟑 Medium
231 Distant Barcodes 1054 Heap β€” Greedy 🟑 Medium
232 Sort Array by Frequency 1636 Heap β€” Top K 🟒 Easy

Recursion (13 problems)

Easy: 6 | Medium: 4 | Hard: 3

# Problem LC # Sub-Pattern Difficulty
287 Fibonacci Number 509 Recursion β€” Basic 🟒 Easy
288 Check if String is Palindrome β€” Recursion β€” Basic 🟒 Easy
289 Check if Array is Sorted β€” Recursion β€” Basic 🟒 Easy
290 Sum of Digits of a Number β€” Recursion β€” Basic 🟒 Easy
291 Remove Occurrences of a Character β€” Recursion β€” Basic 🟒 Easy
292 Count Good Numbers 1922 Recursion β€” Basic 🟑 Medium
293 Pow(x, n) 50 Recursion β€” D&C 🟑 Medium
294 Binary Search (Recursive) 704 Recursion β€” D&C 🟒 Easy
295 Merge Sort β€” Recursion β€” D&C 🟑 Medium
296 Maximum Subarray (D&C) 53 Recursion β€” D&C 🟑 Medium
297 Count Smaller Numbers After Self 315 Recursion β€” D&C πŸ”΄ Hard
298 Reverse Pairs 493 Recursion β€” D&C πŸ”΄ Hard
299 Count of Range Sum 327 Recursion β€” D&C πŸ”΄ Hard

Backtracking (16 problems)

Easy: 0 | Medium: 13 | Hard: 3

# Problem LC # Sub-Pattern Difficulty
300 Subsets 78 Backtracking β€” Subsets 🟑 Medium
301 Subsets II 90 Backtracking β€” Subsets 🟑 Medium
302 Permutations 46 Backtracking β€” Permutations 🟑 Medium
303 Permutations II 47 Backtracking β€” Permutations 🟑 Medium
304 Combinations 77 Backtracking β€” Combinations 🟑 Medium
305 Combination Sum 39 Backtracking β€” Combinations 🟑 Medium
306 Combination Sum II 40 Backtracking β€” Combinations 🟑 Medium
307 Generate Parentheses 22 Backtracking β€” String 🟑 Medium
308 Letter Combinations of a Phone Number 17 Backtracking β€” String 🟑 Medium
309 Palindrome Partitioning 131 Backtracking β€” String 🟑 Medium
310 Split String β€” Backtracking β€” String 🟑 Medium
311 N-Queens 51 Backtracking β€” Hard πŸ”΄ Hard
312 Word Search 79 Backtracking β€” Grid 🟑 Medium
313 Sudoku Solver 37 Backtracking β€” Hard πŸ”΄ Hard
314 Unique Paths III 980 Backtracking β€” Grid πŸ”΄ Hard
315 Path with Maximum Gold 1219 Backtracking β€” Grid 🟑 Medium

Recursive Search (1 problems)

Easy: 0 | Medium: 1 | Hard: 0

# Problem LC # Sub-Pattern Difficulty
316 Jump Game 55 Recursive Search 🟑 Medium

Tree (54 problems)

Easy: 20 | Medium: 30 | Hard: 4

# Problem LC # Sub-Pattern Difficulty
233 Binary Tree Inorder Traversal 94 Tree β€” Traversal 🟒 Easy
234 Binary Tree Preorder Traversal 144 Tree β€” Traversal 🟒 Easy
235 Binary Tree Postorder Traversal 145 Tree β€” Traversal 🟒 Easy
236 Binary Tree Level Order Traversal 102 Tree β€” BFS 🟑 Medium
237 Binary Tree Zigzag Level Order 103 Tree β€” BFS 🟑 Medium
238 Binary Tree Level Order Traversal II 107 Tree β€” BFS 🟒 Easy
239 Invert Binary Tree 226 Tree β€” Mirror 🟒 Easy
240 Symmetric Tree 101 Tree β€” Symmetry 🟒 Easy
241 Same Tree 100 Tree β€” Comparison 🟒 Easy
242 Subtree of Another Tree 572 Tree β€” Comparison 🟑 Medium
243 Flip Equivalent Binary Trees 951 Tree β€” Mirror 🟑 Medium
244 Search in a Binary Search Tree 700 Tree β€” BST Search 🟒 Easy
245 Lowest Common Ancestor of BST 235 Tree β€” BST LCA 🟑 Medium
246 Lowest Common Ancestor of Binary Tree 236 Tree β€” LCA 🟑 Medium
247 LCA of Deepest Leaves 1123 Tree β€” LCA 🟑 Medium
248 Find Mode in BST 501 Tree β€” BST Traversal 🟒 Easy
249 Two Sum IV β€” BST 653 Tree β€” BST Search 🟒 Easy
250 Kth Smallest Element in BST 230 Tree β€” BST Inorder 🟑 Medium
251 Minimum Depth of Binary Tree 111 Tree β€” Depth 🟒 Easy
252 Maximum Depth of Binary Tree 104 Tree β€” Depth 🟒 Easy
253 Balanced Binary Tree 110 Tree β€” Validation 🟒 Easy
254 Diameter of Binary Tree 543 Tree β€” Properties 🟒 Easy
255 Binary Tree Tilt 563 Tree β€” Properties 🟒 Easy
256 Check Completeness of Binary Tree 958 Tree β€” Validation 🟑 Medium
257 Validate Binary Search Tree 98 Tree β€” BST Validation 🟑 Medium
258 Recover Binary Search Tree 99 Tree β€” BST Recovery πŸ”΄ Hard
259 Path Sum 112 Tree β€” Path Sum 🟒 Easy
260 Path Sum II 113 Tree β€” Path Sum 🟑 Medium
261 Path Sum III 437 Tree β€” Path Sum 🟑 Medium
262 Sum Root to Leaf Numbers 129 Tree β€” Path Sum 🟑 Medium
263 Binary Tree Maximum Path Sum 124 Tree β€” Path Sum πŸ”΄ Hard
264 Construct BT from Preorder and Inorder 105 Tree β€” Construction 🟑 Medium
265 Construct BT from Inorder and Postorder 106 Tree β€” Construction 🟑 Medium
266 Construct BT from Preorder and Postorder 889 Tree β€” Construction 🟑 Medium
267 Convert Sorted Array to BST 108 Tree β€” Construction 🟒 Easy
268 Convert Sorted List to BST 109 Tree β€” Construction 🟑 Medium
269 Serialize and Deserialize Binary Tree 297 Tree β€” Serialization πŸ”΄ Hard
270 Even Odd Tree 1609 Tree β€” BFS 🟑 Medium
271 Reverse Odd Levels of Binary Tree 2415 Tree β€” BFS 🟑 Medium
272 Deepest Leaves Sum 1302 Tree β€” BFS 🟑 Medium
273 Add One Row to Tree 623 Tree β€” BFS 🟑 Medium
274 Maximum Width of Binary Tree 662 Tree β€” BFS 🟑 Medium
275 All Nodes Distance K in Binary Tree 863 Tree β€” BFS + Graph 🟑 Medium
276 Maximum Binary Tree 654 Tree β€” Construction 🟑 Medium
277 Construct BST from Preorder Traversal 1008 Tree β€” Construction 🟑 Medium
278 Binary Tree Paths 257 Tree β€” Root to Leaf 🟒 Easy
279 Smallest String Starting from Leaf 988 Tree β€” Root to Leaf 🟑 Medium
280 Insufficient Nodes in Root to Leaf 1080 Tree β€” Root to Leaf 🟑 Medium
281 Pseudo-Palindromic Paths in Binary Tree 1457 Tree β€” Root to Leaf 🟑 Medium
282 Maximum Difference Between Node and Ancestor 1026 Tree β€” Ancestor 🟑 Medium
283 Kth Ancestor of a Tree Node 1483 Tree β€” Ancestor πŸ”΄ Hard
284 Range Sum of BST 938 Tree β€” BST 🟒 Easy
285 Minimum Absolute Difference in BST 530 Tree β€” BST Inorder 🟒 Easy
286 Insert into a BST 701 Tree β€” BST Insert 🟑 Medium

Graph (44 problems)

Easy: 1 | Medium: 33 | Hard: 10

# Problem LC # Sub-Pattern Difficulty
317 Number of Islands 200 Graph β€” DFS/BFS 🟑 Medium
318 Friend Circles (Number of Provinces) 547 Graph β€” DFS/UF 🟑 Medium
319 Max Area of Island 695 Graph β€” DFS 🟑 Medium
320 Surrounded Regions 130 Graph β€” DFS Boundary 🟑 Medium
321 Shortest Path in Binary Matrix 1091 Graph β€” BFS 🟑 Medium
322 Word Ladder 127 Graph β€” BFS πŸ”΄ Hard
323 Path with Minimum Effort 1631 Graph β€” Dijkstra 🟑 Medium
324 Swim in Rising Water 778 Graph β€” Dijkstra πŸ”΄ Hard
325 Find Eventual Safe States 802 Graph β€” DFS Cycle 🟑 Medium
326 All Paths Source to Target 797 Graph β€” DFS 🟑 Medium
327 Longest Increasing Path in Matrix 329 Graph β€” DFS + Memo πŸ”΄ Hard
328 Network Delay Time 743 Graph β€” Dijkstra 🟑 Medium
329 Cheapest Flights Within K Stops 787 Graph β€” Bellman-Ford 🟑 Medium
330 Path with Maximum Probability 1514 Graph β€” Dijkstra 🟑 Medium
331 Find the City (Smallest Neighbours) 1334 Graph β€” Floyd-Warshall 🟑 Medium
332 Course Schedule 207 Graph β€” Topological Sort 🟑 Medium
333 Course Schedule II 210 Graph β€” Topological Sort 🟑 Medium
334 Course Schedule IV 1462 Graph β€” Topological Sort 🟑 Medium
335 Alien Dictionary 269 Graph β€” Topological Sort πŸ”΄ Hard
336 Sequence Reconstruction 444 Graph β€” Topological Sort 🟑 Medium
337 Redundant Connection 684 Graph β€” Union Find 🟑 Medium
338 Redundant Connection II 685 Graph β€” Union Find πŸ”΄ Hard
339 Accounts Merge 721 Graph β€” Union Find 🟑 Medium
340 Number of Operations β€” Network 1319 Graph β€” Union Find 🟑 Medium
341 Satisfiability of Equality Equations 990 Graph β€” Union Find 🟑 Medium
342 Min Cost to Connect All Points 1584 Graph β€” Kruskal / Prim 🟑 Medium
343 Connecting Cities with Min Cost 1135 Graph β€” Kruskal 🟑 Medium
344 Is Graph Bipartite? 785 Graph β€” BFS Coloring 🟑 Medium
345 Possible Bipartition 886 Graph β€” BFS Coloring 🟑 Medium
346 Flower Planting With No Adjacent 1042 Graph β€” Greedy Coloring 🟒 Easy
347 M-Coloring Problem β€” Graph β€” Backtracking 🟑 Medium
348 Min Cost to Provide Water 1168 Graph β€” Kruskal πŸ”΄ Hard
349 Minimum Obstacle Removal 2290 Graph β€” 0-1 BFS πŸ”΄ Hard
350 Minimum Moves to Move Box 1263 Graph β€” BFS (states) πŸ”΄ Hard
351 Minimum Cost Reach Destination in Time 1928 Graph β€” Dijkstra πŸ”΄ Hard
352 Connect Sticks (Min Cost) 1167 Graph β€” Greedy Heap 🟑 Medium
353 Longest Path in DAG β€” Graph β€” Topo Sort + DP 🟑 Medium
354 Number of Enclaves 1020 Graph β€” DFS Boundary 🟑 Medium
355 Time to Inform All Employees 1376 Graph β€” DFS 🟑 Medium
356 01 Matrix 542 Graph β€” Multi-source BFS 🟑 Medium
357 Rotting Oranges 994 Graph β€” Multi-source BFS 🟑 Medium
358 As Far from Land as Possible 1162 Graph β€” Multi-source BFS 🟑 Medium
359 Most Stones Removed 947 Graph β€” Union Find 🟑 Medium
360 Strange Printer II 1591 Graph β€” Topological Sort πŸ”΄ Hard

DP (38 problems)

Easy: 2 | Medium: 25 | Hard: 11

# Problem LC # Sub-Pattern Difficulty
361 House Robber 198 DP β€” Fibonacci / Decision 🟑 Medium
362 Maximum Subarray 53 DP β€” Fibonacci / Decision 🟒 Easy
363 Decode Ways 91 DP β€” Fibonacci / Decision 🟑 Medium
364 Coin Change 322 DP β€” Min/Max Path 🟑 Medium
365 Minimum Path Sum 64 DP β€” Min/Max Path 🟑 Medium
366 Minimum Falling Path Sum 931 DP β€” Min/Max Path 🟑 Medium
367 Unique Paths 62 DP β€” Min/Max Path 🟑 Medium
368 0/1 Knapsack β€” DP β€” 0/1 Knapsack 🟑 Medium
369 Partition Equal Subset Sum 416 DP β€” 0/1 Knapsack 🟑 Medium
370 Target Sum 494 DP β€” 0/1 Knapsack 🟑 Medium
371 Ones and Zeroes 474 DP β€” 0/1 Knapsack 🟑 Medium
372 Last Stone Weight II 1049 DP β€” 0/1 Knapsack 🟑 Medium
373 Coin Change II 518 DP β€” Unbounded Knapsack 🟑 Medium
374 Count Numbers with Unique Digits 357 DP β€” Unbounded Knapsack 🟑 Medium
375 Longest Increasing Subsequence 300 DP β€” LIS / Subsequences 🟑 Medium
376 Count Different Palindromic Subsequences 730 DP β€” LIS / Subsequences πŸ”΄ Hard
377 Longest Common Subsequence 1143 DP β€” Strings 🟑 Medium
378 Edit Distance 72 DP β€” Strings πŸ”΄ Hard
379 Longest Palindromic Subsequence 516 DP β€” Strings 🟑 Medium
380 Distinct Subsequences 115 DP β€” Strings πŸ”΄ Hard
381 Burst Balloons 312 DP β€” Interval πŸ”΄ Hard
382 Min Cost to Cut a Stick 1547 DP β€” Interval πŸ”΄ Hard
383 Matrix Chain Multiplication β€” DP β€” Interval πŸ”΄ Hard
384 Strange Printer 664 DP β€” Interval πŸ”΄ Hard
385 Minimum Cost to Merge Stones 1000 DP β€” Interval πŸ”΄ Hard
386 Remove Boxes 546 DP β€” Interval πŸ”΄ Hard
387 Knight Probability in Chessboard 688 DP β€” Probability 🟑 Medium
388 Dice Roll Simulation 1223 DP β€” Probability 🟑 Medium
389 Soup Servings 808 DP β€” Probability 🟑 Medium
390 New 21 Game 837 DP β€” Probability 🟑 Medium
391 Number of Ways β€” DP β€” Climbing Stairs 🟒 Easy
392 Decode Ways II β€” DP β€” Strings πŸ”΄ Hard
393 Longest Palindromic Substring 5 DP β€” Strings 🟑 Medium
394 Word Break 139 DP β€” Unbounded 🟑 Medium
395 Jump Game II 45 DP β€” Greedy 🟑 Medium
396 House Robber II 213 DP β€” Fibonacci 🟑 Medium
397 Maximal Square 221 DP β€” Grid 🟑 Medium
398 Two Boxes 1467 DP β€” Probability πŸ”΄ Hard