All 785 problems from Google's six-month LeetCode list (252 Easy, 410 Medium, 123 Hard), grouped by the pattern that solves them. 572 are solved on this site: open one to see which pattern to choose and why, the approach, the code with a line-by-line explanation, and a player that steps through the code on LeetCode's own example. Easy warm-ups and SQL/JavaScript problems link to LeetCode.
On the pattern pages these problems carry a Google badge. Frequency is LeetCode's relative score for this list (100 = asked most often). Read a pattern page first, then work through its group here from the most to the least frequent problem.
About 5–6 problems on 5 days a week. Each month: read the pattern page, solve its worked examples without looking, then this list. Re-solve anything you needed a hint for one week later.
In the last two weeks, filter to Hard, sort your attention by frequency, and do timed mock interviews: 45 minutes, talk through the brute force, name the pattern, then code it.
27 solved on the pattern page (step-by-step explanation and a step-through player), 6 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 560 | Subarray Sum Equals K | Medium | 59 | Array, Hash Table, Prefix Sum | Solution · LeetCode ↗ | |
| 238 | Product of Array Except Self | Medium | 48 | Array, Prefix Sum | Solution · LeetCode ↗ | |
| 1480 | Running Sum of 1d Array | Easy | 45 | Array, Prefix Sum | LeetCode ↗ | |
| 528 | Random Pick with Weight | Medium | 37 | Array, Math, Binary Search, Prefix Sum, Randomized | Solution · LeetCode ↗ | |
| 1732 | Find the Highest Altitude | Easy | 33 | Array, Prefix Sum | LeetCode ↗ | |
| 974 | Subarray Sums Divisible by K | Medium | 33 | Array, Hash Table, Prefix Sum | Solution · LeetCode ↗ | |
| 303 | Range Sum Query - Immutable | Easy | 33 | Array, Design, Prefix Sum | Solution · LeetCode ↗ | |
| 437 | Path Sum III | Medium | 28 | Tree, Depth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 3026 | Maximum Good Subarray Sum | Medium | 28 | Array, Hash Table, Prefix Sum | Solution · LeetCode ↗ | |
| 2574 | Left and Right Sum Differences | Easy | 28 | Array, Prefix Sum | LeetCode ↗ | |
| 3699 | Number of ZigZag Arrays I | Hard | 28 | Dynamic Programming, Prefix Sum | Solution · LeetCode ↗ | |
| 1109 | Corporate Flight Bookings | Medium | 25 | Array, Prefix Sum | Solution · LeetCode ↗ | |
| 3737 | Count Subarrays With Majority Element I | Medium | 25 | Array, Hash Table, Divide and Conquer, Segment Tree, Merge Sort, Counting, Prefix Sum | Solution · LeetCode ↗ | |
| 525 | Contiguous Array | Medium | 22 | Array, Hash Table, Prefix Sum | Solution · LeetCode ↗ | |
| 304 | Range Sum Query 2D - Immutable | Medium | 22 | Array, Design, Matrix, Prefix Sum | Solution · LeetCode ↗ | |
| 3129 | Find All Possible Stable Binary Arrays I | Medium | 17 | Dynamic Programming, Prefix Sum | Solution · LeetCode ↗ | |
| 862 | Shortest Subarray with Sum at Least K | Hard | 17 | Array, Binary Search, Queue, Sliding Window, Heap (Priority Queue), Prefix Sum, Monotonic Queue | Solution · LeetCode ↗ | |
| 3546 | Equal Sum Grid Partition I | Medium | 17 | Array, Matrix, Enumeration, Prefix Sum | Solution · LeetCode ↗ | |
| 3548 | Equal Sum Grid Partition II | Hard | 17 | Array, Hash Table, Matrix, Enumeration, Prefix Sum | Solution · LeetCode ↗ | |
| 1674 | Minimum Moves to Make Array Complementary | Medium | 17 | Array, Hash Table, Prefix Sum | Solution · LeetCode ↗ | |
| 798 | Smallest Rotation with Highest Score | Hard | 17 | Array, Prefix Sum | Solution · LeetCode ↗ | |
| 523 | Continuous Subarray Sum | Medium | 17 | Array, Hash Table, Math, Prefix Sum, Pigeonhole Principle | Solution · LeetCode ↗ | |
| 1248 | Count Number of Nice Subarrays | Medium | 17 | Array, Hash Table, Math, Sliding Window, Prefix Sum | Solution · LeetCode ↗ | |
| 930 | Binary Subarrays With Sum | Medium | 12 | Array, Hash Table, Sliding Window, Prefix Sum | Solution · LeetCode ↗ | |
| 1590 | Make Sum Divisible by P | Medium | 12 | Array, Hash Table, Prefix Sum | Solution · LeetCode ↗ | |
| 3070 | Count Submatrices with Top-Left Element and Sum Less Than k | Medium | 12 | Array, Matrix, Prefix Sum | Solution · LeetCode ↗ | |
| 724 | Find Pivot Index | Easy | 12 | Array, Prefix Sum | LeetCode ↗ | |
| 2615 | Sum of Distances | Medium | 12 | Array, Hash Table, Prefix Sum | Solution · LeetCode ↗ | |
| 1314 | Matrix Block Sum | Medium | 12 | Array, Matrix, Prefix Sum | Solution · LeetCode ↗ | |
| 3432 | Count Partitions with Even Sum Difference | Easy | 12 | Array, Math, Prefix Sum | LeetCode ↗ | |
| 363 | Max Sum of Rectangle No Larger Than K | Hard | 12 | Array, Binary Search, Matrix, Prefix Sum, Ordered Set | Solution · LeetCode ↗ | |
| 1124 | Longest Well-Performing Interval | Medium | 12 | Array, Hash Table, Stack, Monotonic Stack, Prefix Sum | Solution · LeetCode ↗ | |
| 3427 | Sum of Variable Length Subarrays | Easy | 12 | Array, Prefix Sum | LeetCode ↗ |
35 solved on the pattern page (step-by-step explanation and a step-through player), 13 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 15 | 3Sum | Medium | 70 | Array, Two Pointers, Sorting | Solution · LeetCode ↗ | |
| 42 | Trapping Rain Water | Hard | 70 | Array, Two Pointers, Dynamic Programming, Stack, Monotonic Stack | Solution · LeetCode ↗ | |
| 4 | Median of Two Sorted Arrays | Hard | 69 | Array, Binary Search, Divide and Conquer | Solution · LeetCode ↗ | |
| 5 | Longest Palindromic Substring | Medium | 64 | Two Pointers, String, Dynamic Programming, Manacher | Solution · LeetCode ↗ | |
| 11 | Container With Most Water | Medium | 63 | Array, Two Pointers, Greedy | Solution · LeetCode ↗ | |
| 26 | Remove Duplicates from Sorted Array | Easy | 62 | Array, Two Pointers | Solution · LeetCode ↗ | |
| 88 | Merge Sorted Array | Easy | 60 | Array, Two Pointers, Sorting | Solution · LeetCode ↗ | |
| 18 | 4Sum | Medium | 54 | Array, Two Pointers, Sorting | Solution · LeetCode ↗ | |
| 1768 | Merge Strings Alternately | Easy | 52 | Two Pointers, String | Solution · LeetCode ↗ | |
| 189 | Rotate Array | Medium | 51 | Array, Math, Two Pointers | Solution · LeetCode ↗ | |
| 283 | Move Zeroes | Easy | 50 | Array, Two Pointers | LeetCode ↗ | |
| 167 | Two Sum II - Input Array Is Sorted | Medium | 50 | Array, Two Pointers, Binary Search | Solution · LeetCode ↗ | |
| 16 | 3Sum Closest | Medium | 49 | Array, Two Pointers, Sorting | Solution · LeetCode ↗ | |
| 27 | Remove Element | Easy | 48 | Array, Two Pointers | LeetCode ↗ | |
| 31 | Next Permutation | Medium | 48 | Array, Two Pointers | Solution · LeetCode ↗ | |
| 344 | Reverse String | Easy | 47 | Two Pointers, String | Solution · LeetCode ↗ | |
| 125 | Valid Palindrome | Easy | 46 | Two Pointers, String | Solution · LeetCode ↗ | |
| 75 | Sort Colors | Medium | 45 | Array, Two Pointers, Sorting, Quicksort, Bubble Sort | Solution · LeetCode ↗ | |
| 977 | Squares of a Sorted Array | Easy | 41 | Array, Two Pointers, Sorting | Solution · LeetCode ↗ | |
| 345 | Reverse Vowels of a String | Easy | 40 | Two Pointers, String | LeetCode ↗ | |
| 80 | Remove Duplicates from Sorted Array II | Medium | 40 | Array, Two Pointers | Solution · LeetCode ↗ | |
| 777 | Swap Adjacent in LR String | Medium | 39 | Two Pointers, String | Solution · LeetCode ↗ | |
| 680 | Valid Palindrome II | Easy | 35 | Two Pointers, String, Greedy | LeetCode ↗ | |
| 455 | Assign Cookies | Easy | 33 | Array, Two Pointers, Greedy, Sorting, Quicksort | LeetCode ↗ | |
| 443 | String Compression | Medium | 28 | Two Pointers, String | Solution · LeetCode ↗ | |
| 2149 | Rearrange Array Elements by Sign | Medium | 28 | Array, Two Pointers, Simulation | Solution · LeetCode ↗ | |
| 844 | Backspace String Compare | Easy | 28 | Two Pointers, String, Stack, Simulation | LeetCode ↗ | |
| 3302 | Find the Lexicographically Smallest Valid Sequence | Medium | 28 | Two Pointers, String, Dynamic Programming, Greedy | Solution · LeetCode ↗ | |
| 392 | Is Subsequence | Easy | 25 | Two Pointers, String, Dynamic Programming | Solution · LeetCode ↗ | |
| 2337 | Move Pieces to Obtain a String | Medium | 25 | Two Pointers, String | Solution · LeetCode ↗ | |
| 881 | Boats to Save People | Medium | 25 | Array, Two Pointers, Greedy, Sorting, Timsort | Solution · LeetCode ↗ | |
| 832 | Flipping an Image | Easy | 22 | Array, Two Pointers, Bit Manipulation, Matrix, Simulation | LeetCode ↗ | |
| 633 | Sum of Square Numbers | Medium | 22 | Math, Two Pointers, Binary Search | Solution · LeetCode ↗ | |
| 160 | Intersection of Two Linked Lists | Easy | 17 | Hash Table, Linked List, Two Pointers | LeetCode ↗ | |
| 653 | Two Sum IV - Input is a BST | Easy | 17 | Hash Table, Two Pointers, Tree, Depth-First Search, Breadth-First Search, Binary Search Tree, Binary Tree | LeetCode ↗ | |
| 696 | Count Binary Substrings | Easy | 17 | Two Pointers, String | LeetCode ↗ | |
| 1861 | Rotating the Box | Medium | 17 | Array, Two Pointers, Matrix | Solution · LeetCode ↗ | |
| 532 | K-diff Pairs in an Array | Medium | 17 | Array, Hash Table, Two Pointers, Binary Search, Sorting | Solution · LeetCode ↗ | |
| 3643 | Flip Square Submatrix Vertically | Easy | 12 | Array, Two Pointers, Matrix | LeetCode ↗ | |
| 2332 | The Latest Time to Catch a Bus | Medium | 12 | Array, Two Pointers, Binary Search, Sorting | Solution · LeetCode ↗ | |
| 165 | Compare Version Numbers | Medium | 12 | Two Pointers, String | Solution · LeetCode ↗ | |
| 923 | 3Sum With Multiplicity | Medium | 12 | Array, Hash Table, Two Pointers, Sorting, Counting | Solution · LeetCode ↗ | |
| 1163 | Last Substring in Lexicographical Order | Hard | 12 | Two Pointers, String, Lyndon Factorization | Solution · LeetCode ↗ | |
| 3867 | Sum of GCD of Formed Pairs | Medium | 12 | Array, Math, Two Pointers, Sorting, Simulation, Number Theory | Solution · LeetCode ↗ | |
| 1089 | Duplicate Zeros | Easy | 12 | Array, Two Pointers | LeetCode ↗ | |
| 556 | Next Greater Element III | Medium | 12 | Math, Two Pointers, String | Solution · LeetCode ↗ | |
| 905 | Sort Array By Parity | Easy | 12 | Array, Two Pointers, Sorting | LeetCode ↗ | |
| 611 | Valid Triangle Number | Medium | 12 | Array, Two Pointers, Binary Search, Greedy, Sorting | Solution · LeetCode ↗ |
29 solved on the pattern page (step-by-step explanation and a step-through player), 3 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 3 | Longest Substring Without Repeating Characters | Medium | 69 | Hash Table, String, Sliding Window | Solution · LeetCode ↗ | |
| 121 | Best Time to Buy and Sell Stock | Easy | 69 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 239 | Sliding Window Maximum | Hard | 48 | Array, Queue, Sliding Window, Heap (Priority Queue), Monotonic Queue, Range Minimum/Maximum Query | Solution · LeetCode ↗ | |
| 424 | Longest Repeating Character Replacement | Medium | 47 | Hash Table, String, Sliding Window | Solution · LeetCode ↗ | |
| 904 | Fruit Into Baskets | Medium | 44 | Array, Hash Table, Sliding Window | Solution · LeetCode ↗ | |
| 219 | Contains Duplicate II | Easy | 44 | Array, Hash Table, Sliding Window | Solution · LeetCode ↗ | |
| 209 | Minimum Size Subarray Sum | Medium | 43 | Array, Binary Search, Sliding Window, Prefix Sum | Solution · LeetCode ↗ | |
| 643 | Maximum Average Subarray I | Easy | 43 | Array, Sliding Window | Solution · LeetCode ↗ | |
| 1004 | Max Consecutive Ones III | Medium | 41 | Array, Binary Search, Sliding Window, Prefix Sum | Solution · LeetCode ↗ | |
| 1838 | Frequency of the Most Frequent Element | Medium | 33 | Array, Binary Search, Greedy, Sliding Window, Sorting, Prefix Sum | Solution · LeetCode ↗ | |
| 1358 | Number of Substrings Containing All Three Characters | Medium | 31 | Hash Table, String, Sliding Window | Solution · LeetCode ↗ | |
| 713 | Subarray Product Less Than K | Medium | 31 | Array, Binary Search, Sliding Window, Prefix Sum | Solution · LeetCode ↗ | |
| 30 | Substring with Concatenation of All Words | Hard | 28 | Hash Table, String, Sliding Window | Solution · LeetCode ↗ | |
| 76 | Minimum Window Substring | Hard | 25 | Hash Table, String, Sliding Window | Solution · LeetCode ↗ | |
| 438 | Find All Anagrams in a String | Medium | 22 | Hash Table, String, Sliding Window | Solution · LeetCode ↗ | |
| 567 | Permutation in String | Medium | 22 | Hash Table, Two Pointers, String, Sliding Window | Solution · LeetCode ↗ | |
| 2461 | Maximum Sum of Distinct Subarrays With Length K | Medium | 22 | Array, Hash Table, Sliding Window | Solution · LeetCode ↗ | |
| 1461 | Check If a String Contains All Binary Codes of Size K | Medium | 17 | Hash Table, String, Bit Manipulation, Rolling Hash, Hash Function, Directed Acyclic Graph | Solution · LeetCode ↗ | |
| 1658 | Minimum Operations to Reduce X to Zero | Medium | 17 | Array, Hash Table, Binary Search, Sliding Window, Prefix Sum | Solution · LeetCode ↗ | |
| 594 | Longest Harmonious Subsequence | Easy | 17 | Array, Hash Table, Sliding Window, Sorting, Counting | LeetCode ↗ | |
| 1695 | Maximum Erasure Value | Medium | 17 | Array, Hash Table, Sliding Window | Solution · LeetCode ↗ | |
| 2958 | Length of Longest Subarray With at Most K Frequency | Medium | 17 | Array, Hash Table, Sliding Window | Solution · LeetCode ↗ | |
| 3090 | Maximum Length Substring With Two Occurrences | Easy | 17 | Hash Table, String, Sliding Window | LeetCode ↗ | |
| 413 | Arithmetic Slices | Medium | 12 | Array, Dynamic Programming, Sliding Window | Solution · LeetCode ↗ | |
| 992 | Subarrays with K Different Integers | Hard | 12 | Array, Hash Table, Sliding Window, Counting | Solution · LeetCode ↗ | |
| 1888 | Minimum Number of Flips to Make the Binary String Alternating | Medium | 12 | String, Dynamic Programming, Sliding Window | Solution · LeetCode ↗ | |
| 1423 | Maximum Points You Can Obtain from Cards | Medium | 12 | Array, Sliding Window, Prefix Sum | Solution · LeetCode ↗ | |
| 3356 | Zero Array Transformation II | Medium | 12 | Array, Two Pointers, Binary Search, Prefix Sum | Solution · LeetCode ↗ | |
| 1763 | Longest Nice Substring | Easy | 12 | Hash Table, String, Divide and Conquer, Bit Manipulation, Sliding Window | LeetCode ↗ | |
| 718 | Maximum Length of Repeated Subarray | Medium | 12 | Array, Binary Search, Dynamic Programming, Sliding Window, Rolling Hash, Hash Function | Solution · LeetCode ↗ | |
| 1343 | Number of Sub-arrays of Size K and Average Greater than or Equal to Threshold | Medium | 12 | Array, Sliding Window | Solution · LeetCode ↗ | |
| 395 | Longest Substring with At Least K Repeating Characters | Medium | 12 | Hash Table, String, Divide and Conquer, Sliding Window | Solution · LeetCode ↗ |
13 solved on the pattern page (step-by-step explanation and a step-through player).
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 202 | Happy Number | Easy | 50 | Hash Table, Math, Two Pointers, Floyd's Cycle Finding Algorithm | Solution · LeetCode ↗ | |
| 876 | Middle of the Linked List | Easy | 48 | Linked List, Two Pointers | Solution · LeetCode ↗ | |
| 41 | First Missing Positive | Hard | 46 | Array, Hash Table | Solution · LeetCode ↗ | |
| 287 | Find the Duplicate Number | Medium | 45 | Array, Two Pointers, Binary Search, Bit Manipulation, Pigeonhole Principle, Floyd's Cycle Finding Algorithm | Solution · LeetCode ↗ | |
| 234 | Palindrome Linked List | Easy | 41 | Linked List, Two Pointers, Stack, Recursion | Solution · LeetCode ↗ | |
| 141 | Linked List Cycle | Easy | 39 | Hash Table, Linked List, Two Pointers, Floyd's Cycle Finding Algorithm | Solution · LeetCode ↗ | |
| 19 | Remove Nth Node From End of List | Medium | 37 | Linked List, Two Pointers | Solution · LeetCode ↗ | |
| 148 | Sort List | Medium | 37 | Linked List, Two Pointers, Divide and Conquer, Sorting, Merge Sort | Solution · LeetCode ↗ | |
| 143 | Reorder List | Medium | 35 | Linked List, Two Pointers, Stack, Recursion | Solution · LeetCode ↗ | |
| 442 | Find All Duplicates in an Array | Medium | 25 | Array, Hash Table, Sorting | Solution · LeetCode ↗ | |
| 2095 | Delete the Middle Node of a Linked List | Medium | 25 | Linked List, Two Pointers | Solution · LeetCode ↗ | |
| 142 | Linked List Cycle II | Medium | 22 | Hash Table, Linked List, Two Pointers, Floyd's Cycle Finding Algorithm | Solution · LeetCode ↗ | |
| 457 | Circular Array Loop | Medium | 17 | Array, Hash Table, Two Pointers, Floyd's Cycle Finding Algorithm | Solution · LeetCode ↗ |
19 solved on the pattern page (step-by-step explanation and a step-through player), 2 Easy warm-ups that link to LeetCode.
17 solved on the pattern page (step-by-step explanation and a step-through player), 1 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 496 | Next Greater Element I | Easy | 47 | Array, Hash Table, Stack, Monotonic Stack | Solution · LeetCode ↗ | |
| 84 | Largest Rectangle in Histogram | Hard | 46 | Array, Stack, Monotonic Stack, Range Minimum/Maximum Query | Solution · LeetCode ↗ | |
| 503 | Next Greater Element II | Medium | 46 | Array, Stack, Monotonic Stack | Solution · LeetCode ↗ | |
| 739 | Daily Temperatures | Medium | 45 | Array, Stack, Monotonic Stack | Solution · LeetCode ↗ | |
| 1944 | Number of Visible People in a Queue | Hard | 44 | Array, Stack, Monotonic Stack | Solution · LeetCode ↗ | |
| 85 | Maximal Rectangle | Hard | 39 | Array, Dynamic Programming, Stack, Matrix, Monotonic Stack | Solution · LeetCode ↗ | |
| 1081 | Smallest Subsequence of Distinct Characters | Medium | 33 | String, Stack, Greedy, Monotonic Stack | Solution · LeetCode ↗ | |
| 907 | Sum of Subarray Minimums | Medium | 28 | Array, Dynamic Programming, Stack, Monotonic Stack | Solution · LeetCode ↗ | |
| 402 | Remove K Digits | Medium | 25 | String, Stack, Greedy, Monotonic Stack | Solution · LeetCode ↗ | |
| 901 | Online Stock Span | Medium | 25 | Stack, Design, Monotonic Stack, Data Stream | Solution · LeetCode ↗ | |
| 581 | Shortest Unsorted Continuous Subarray | Medium | 22 | Array, Two Pointers, Stack, Greedy, Sorting, Monotonic Stack | Solution · LeetCode ↗ | |
| 853 | Car Fleet | Medium | 22 | Array, Stack, Sorting, Monotonic Stack | Solution · LeetCode ↗ | |
| 1475 | Final Prices With a Special Discount in a Shop | Easy | 17 | Array, Stack, Monotonic Stack | LeetCode ↗ | |
| 975 | Odd Even Jump | Hard | 17 | Array, Dynamic Programming, Stack, Sorting, Monotonic Stack, Ordered Set | Solution · LeetCode ↗ | |
| 316 | Remove Duplicate Letters | Medium | 17 | String, Stack, Greedy, Monotonic Stack | Solution · LeetCode ↗ | |
| 962 | Maximum Width Ramp | Medium | 12 | Array, Two Pointers, Stack, Monotonic Stack | Solution · LeetCode ↗ | |
| 1008 | Construct Binary Search Tree from Preorder Traversal | Medium | 12 | Array, Stack, Tree, Binary Search Tree, Monotonic Stack, Binary Tree | Solution · LeetCode ↗ | |
| 2104 | Sum of Subarray Ranges | Medium | 12 | Array, Stack, Monotonic Stack | Solution · LeetCode ↗ |
23 solved on the pattern page (step-by-step explanation and a step-through player), 1 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 347 | Top K Frequent Elements | Medium | 54 | Array, Hash Table, Divide and Conquer, Sorting, Heap (Priority Queue), Bucket Sort, Counting, Quickselect | Solution · LeetCode ↗ | |
| 215 | Kth Largest Element in an Array | Medium | 45 | Array, Divide and Conquer, Sorting, Heap (Priority Queue), Quickselect | Solution · LeetCode ↗ | |
| 295 | Find Median from Data Stream | Hard | 40 | Two Pointers, Design, Sorting, Heap (Priority Queue), Data Stream | Solution · LeetCode ↗ | |
| 1464 | Maximum Product of Two Elements in an Array | Easy | 35 | Array, Sorting, Heap (Priority Queue) | LeetCode ↗ | |
| 621 | Task Scheduler | Medium | 33 | Array, Hash Table, Greedy, Sorting, Heap (Priority Queue), Counting | Solution · LeetCode ↗ | |
| 703 | Kth Largest Element in a Stream | Easy | 33 | Tree, Design, Binary Search Tree, Heap (Priority Queue), Binary Tree, Data Stream | Solution · LeetCode ↗ | |
| 767 | Reorganize String | Medium | 28 | Hash Table, String, Greedy, Sorting, Heap (Priority Queue), Counting | Solution · LeetCode ↗ | |
| 373 | Find K Pairs with Smallest Sums | Medium | 25 | Array, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 23 | Merge k Sorted Lists | Hard | 22 | Linked List, Divide and Conquer, Heap (Priority Queue), Merge Sort, Tournament Sort | Solution · LeetCode ↗ | |
| 451 | Sort Characters By Frequency | Medium | 22 | Hash Table, String, Sorting, Heap (Priority Queue), Bucket Sort, Counting | Solution · LeetCode ↗ | |
| 1046 | Last Stone Weight | Easy | 22 | Array, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 658 | Find K Closest Elements | Medium | 17 | Array, Two Pointers, Binary Search, Sliding Window, Sorting, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 2344 | Minimum Deletions to Make Array Divisible | Hard | 17 | Array, Math, Sorting, Heap (Priority Queue), Number Theory, Euclidean Algorithm, Greatest Common Divisor | Solution · LeetCode ↗ | |
| 355 | Design Twitter | Medium | 17 | Hash Table, Linked List, Design, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 502 | IPO | Hard | 17 | Array, Greedy, Sorting, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 1834 | Single-Threaded CPU | Medium | 17 | Array, Sorting, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 3296 | Minimum Number of Seconds to Make Mountain Height Zero | Medium | 12 | Array, Math, Binary Search, Greedy, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 1878 | Get Biggest Three Rhombus Sums in a Grid | Medium | 12 | Array, Math, Sorting, Heap (Priority Queue), Matrix, Prefix Sum | Solution · LeetCode ↗ | |
| 358 | Rearrange String k Distance Apart Premium | Hard | 12 | Hash Table, String, Greedy, Sorting, Heap (Priority Queue), Counting | Solution · LeetCode ↗ | |
| 2034 | Stock Price Fluctuation | Medium | 12 | Hash Table, Design, Heap (Priority Queue), Data Stream, Ordered Set | Solution · LeetCode ↗ | |
| 1353 | Maximum Number of Events That Can Be Attended | Medium | 12 | Array, Greedy, Sorting, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 871 | Minimum Number of Refueling Stops | Hard | 12 | Array, Dynamic Programming, Greedy, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 2402 | Meeting Rooms III | Hard | 12 | Array, Hash Table, Sorting, Heap (Priority Queue), Simulation | Solution · LeetCode ↗ | |
| 264 | Ugly Number II | Medium | 12 | Hash Table, Math, Dynamic Programming, Heap (Priority Queue) | Solution · LeetCode ↗ |
12 solved on the pattern page (step-by-step explanation and a step-through player).
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 56 | Merge Intervals | Medium | 56 | Array, Sorting, Quicksort | Solution · LeetCode ↗ | |
| 253 | Meeting Rooms II Premium | Medium | 45 | Array, Two Pointers, Greedy, Sorting, Heap (Priority Queue), Prefix Sum | Solution · LeetCode ↗ | |
| 57 | Insert Interval | Medium | 37 | Array | Solution · LeetCode ↗ | |
| 1094 | Car Pooling | Medium | 35 | Array, Sorting, Heap (Priority Queue), Simulation, Prefix Sum | Solution · LeetCode ↗ | |
| 1288 | Remove Covered Intervals | Medium | 25 | Array, Sorting | Solution · LeetCode ↗ | |
| 715 | Range Module | Hard | 22 | Design, Segment Tree, Ordered Set | Solution · LeetCode ↗ | |
| 228 | Summary Ranges | Easy | 22 | Array | Solution · LeetCode ↗ | |
| 435 | Non-overlapping Intervals | Medium | 22 | Array, Dynamic Programming, Greedy, Sorting | Solution · LeetCode ↗ | |
| 452 | Minimum Number of Arrows to Burst Balloons | Medium | 22 | Array, Greedy, Sorting | Solution · LeetCode ↗ | |
| 759 | Employee Free Time Premium | Hard | 17 | Array, Sweep Line, Sorting, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 763 | Partition Labels | Medium | 12 | Hash Table, Two Pointers, String, Greedy | Solution · LeetCode ↗ | |
| 1851 | Minimum Interval to Include Each Query | Hard | 12 | Array, Binary Search, Sweep Line, Sorting, Heap (Priority Queue) | Solution · LeetCode ↗ |
35 solved on the pattern page (step-by-step explanation and a step-through player), 7 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 875 | Koko Eating Bananas | Medium | 54 | Array, Binary Search | Solution · LeetCode ↗ | |
| 33 | Search in Rotated Sorted Array | Medium | 53 | Array, Binary Search | Solution · LeetCode ↗ | |
| 69 | Sqrt(x) | Easy | 52 | Math, Binary Search, Newton's Method | LeetCode ↗ | |
| 410 | Split Array Largest Sum | Hard | 50 | Array, Binary Search, Dynamic Programming, Greedy, Prefix Sum | Solution · LeetCode ↗ | |
| 349 | Intersection of Two Arrays | Easy | 50 | Array, Hash Table, Two Pointers, Binary Search, Sorting | LeetCode ↗ | |
| 35 | Search Insert Position | Easy | 49 | Array, Binary Search | Solution · LeetCode ↗ | |
| 704 | Binary Search | Easy | 48 | Array, Binary Search | Solution · LeetCode ↗ | |
| 268 | Missing Number | Easy | 47 | Array, Hash Table, Math, Binary Search, Bit Manipulation, Sorting | LeetCode ↗ | |
| 162 | Find Peak Element | Medium | 47 | Array, Binary Search | Solution · LeetCode ↗ | |
| 34 | Find First and Last Position of Element in Sorted Array | Medium | 44 | Array, Binary Search | Solution · LeetCode ↗ | |
| 540 | Single Element in a Sorted Array | Medium | 44 | Array, Binary Search | Solution · LeetCode ↗ | |
| 354 | Russian Doll Envelopes | Hard | 41 | Array, Binary Search, Dynamic Programming, Sorting, Longest Increasing Subsequence | Solution · LeetCode ↗ | |
| 74 | Search a 2D Matrix | Medium | 40 | Array, Binary Search, Matrix | Solution · LeetCode ↗ | |
| 1011 | Capacity To Ship Packages Within D Days | Medium | 37 | Array, Binary Search | Solution · LeetCode ↗ | |
| 240 | Search a 2D Matrix II | Medium | 37 | Array, Binary Search, Divide and Conquer, Matrix | Solution · LeetCode ↗ | |
| 81 | Search in Rotated Sorted Array II | Medium | 37 | Array, Binary Search | Solution · LeetCode ↗ | |
| 278 | First Bad Version | Easy | 35 | Binary Search, Interactive | Solution · LeetCode ↗ | |
| 1539 | Kth Missing Positive Number | Easy | 35 | Array, Binary Search | LeetCode ↗ | |
| 852 | Peak Index in a Mountain Array | Medium | 31 | Array, Binary Search, Ternary Search | Solution · LeetCode ↗ | |
| 981 | Time Based Key-Value Store | Medium | 31 | Hash Table, String, Binary Search, Design | Solution · LeetCode ↗ | |
| 153 | Find Minimum in Rotated Sorted Array | Medium | 28 | Array, Binary Search | Solution · LeetCode ↗ | |
| 1482 | Minimum Number of Days to Make m Bouquets | Medium | 28 | Array, Binary Search | Solution · LeetCode ↗ | |
| 2035 | Partition Array Into Two Arrays to Minimize Sum Difference | Hard | 28 | Array, Two Pointers, Binary Search, Dynamic Programming, Bit Manipulation, Meet in the Middle, Sorting, Ordered Set, Bitmask | Solution · LeetCode ↗ | |
| 367 | Valid Perfect Square | Easy | 28 | Math, Binary Search | Solution · LeetCode ↗ | |
| 154 | Find Minimum in Rotated Sorted Array II | Hard | 22 | Array, Binary Search | Solution · LeetCode ↗ | |
| 1044 | Longest Duplicate Substring | Hard | 17 | String, Binary Search, Sliding Window, Rolling Hash, Suffix Array, Hash Function, Suffix Automaton, Suffix Tree, Z Algorithm, Boyer–Moore String-Search Algorithm | Solution · LeetCode ↗ | |
| 1235 | Maximum Profit in Job Scheduling | Hard | 17 | Array, Binary Search, Dynamic Programming, Sorting | Solution · LeetCode ↗ | |
| 3464 | Maximize the Distance Between Points on a Square | Hard | 17 | Array, Math, Binary Search, Geometry, Sorting | Solution · LeetCode ↗ | |
| 2540 | Minimum Common Value | Easy | 17 | Array, Hash Table, Two Pointers, Binary Search | LeetCode ↗ | |
| 3633 | Earliest Finish Time for Land and Water Rides I | Easy | 17 | Array, Two Pointers, Binary Search, Greedy, Sorting | LeetCode ↗ | |
| 2187 | Minimum Time to Complete Trips | Medium | 17 | Array, Binary Search | Solution · LeetCode ↗ | |
| 400 | Nth Digit | Medium | 12 | Math, Binary Search | Solution · LeetCode ↗ | |
| 1095 | Find in Mountain Array | Hard | 12 | Array, Binary Search, Interactive, Ternary Search | Solution · LeetCode ↗ | |
| 3488 | Closest Equal Element Queries | Medium | 12 | Array, Hash Table, Binary Search | Solution · LeetCode ↗ | |
| 3932 | Count K-th Roots in a Range | Medium | 12 | Math, Binary Search | Solution · LeetCode ↗ | |
| 2089 | Find Target Indices After Sorting Array | Easy | 12 | Array, Binary Search, Sorting | LeetCode ↗ | |
| 1146 | Snapshot Array | Medium | 12 | Array, Hash Table, Binary Search, Design, Persistent Data Structure | Solution · LeetCode ↗ | |
| 1760 | Minimum Limit of Balls in a Bag | Medium | 12 | Array, Binary Search | Solution · LeetCode ↗ | |
| 2498 | Frog Jump II | Medium | 12 | Array, Binary Search, Greedy | Solution · LeetCode ↗ | |
| 2226 | Maximum Candies Allocated to K Children | Medium | 12 | Array, Binary Search | Solution · LeetCode ↗ | |
| 878 | Nth Magical Number | Hard | 12 | Math, Binary Search, Least Common Multiple, Inclusion-Exclusion Principle | Solution · LeetCode ↗ | |
| 1552 | Magnetic Force Between Two Balls | Medium | 12 | Array, Binary Search, Sorting | Solution · LeetCode ↗ |
42 solved on the pattern page (step-by-step explanation and a step-through player), 7 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 102 | Binary Tree Level Order Traversal | Medium | 46 | Tree, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 100 | Same Tree | Easy | 45 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 94 | Binary Tree Inorder Traversal | Easy | 43 | Stack, Tree, Depth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 104 | Maximum Depth of Binary Tree | Easy | 41 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 101 | Symmetric Tree | Easy | 35 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 543 | Diameter of Binary Tree | Easy | 35 | Tree, Depth-First Search, Binary Tree, DP on Trees | Solution · LeetCode ↗ | |
| 110 | Balanced Binary Tree | Easy | 33 | Tree, Depth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 226 | Invert Binary Tree | Easy | 33 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 236 | Lowest Common Ancestor of a Binary Tree | Medium | 33 | Tree, Depth-First Search, Binary Tree, Binary Lifting, Lowest Common Ancestor | Solution · LeetCode ↗ | |
| 103 | Binary Tree Zigzag Level Order Traversal | Medium | 33 | Tree, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 662 | Maximum Width of Binary Tree | Medium | 33 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 105 | Construct Binary Tree from Preorder and Inorder Traversal | Medium | 31 | Array, Hash Table, Divide and Conquer, Tree, Binary Tree | Solution · LeetCode ↗ | |
| 700 | Search in a Binary Search Tree | Easy | 31 | Tree, Binary Search Tree, Binary Tree | LeetCode ↗ | |
| 124 | Binary Tree Maximum Path Sum | Hard | 28 | Dynamic Programming, Tree, Depth-First Search, Binary Tree, DP on Trees | Solution · LeetCode ↗ | |
| 230 | Kth Smallest Element in a BST | Medium | 25 | Tree, Depth-First Search, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 98 | Validate Binary Search Tree | Medium | 25 | Tree, Depth-First Search, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 1110 | Delete Nodes And Return Forest | Medium | 25 | Array, Hash Table, Tree, Depth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 199 | Binary Tree Right Side View | Medium | 25 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 222 | Count Complete Tree Nodes | Medium | 25 | Binary Search, Bit Manipulation, Tree, Binary Tree | Solution · LeetCode ↗ | |
| 108 | Convert Sorted Array to Binary Search Tree | Easy | 22 | Array, Divide and Conquer, Tree, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 99 | Recover Binary Search Tree | Medium | 22 | Tree, Depth-First Search, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 235 | Lowest Common Ancestor of a Binary Search Tree | Medium | 22 | Tree, Depth-First Search, Binary Search Tree, Binary Tree, Binary Lifting, Lowest Common Ancestor | Solution · LeetCode ↗ | |
| 144 | Binary Tree Preorder Traversal | Easy | 22 | Stack, Tree, Depth-First Search, Binary Tree | LeetCode ↗ | |
| 834 | Sum of Distances in Tree | Hard | 22 | Dynamic Programming, Tree, Depth-First Search, Graph Theory, DP on Trees | Solution · LeetCode ↗ | |
| 530 | Minimum Absolute Difference in BST | Easy | 22 | Tree, Depth-First Search, Breadth-First Search, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 3559 | Number of Ways to Assign Edge Weights II | Hard | 22 | Array, Math, Dynamic Programming, Bit Manipulation, Tree, Depth-First Search | Solution · LeetCode ↗ | |
| 297 | Serialize and Deserialize Binary Tree | Hard | 17 | String, Tree, Depth-First Search, Breadth-First Search, Design, Binary Tree | Solution · LeetCode ↗ | |
| 95 | Unique Binary Search Trees II | Medium | 17 | Dynamic Programming, Backtracking, Tree, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 701 | Insert into a Binary Search Tree | Medium | 17 | Tree, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 501 | Find Mode in Binary Search Tree | Easy | 17 | Tree, Depth-First Search, Binary Search Tree, Binary Tree | LeetCode ↗ | |
| 96 | Unique Binary Search Trees | Medium | 17 | Math, Dynamic Programming, Tree, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 938 | Range Sum of BST | Easy | 17 | Tree, Depth-First Search, Binary Search Tree, Binary Tree | LeetCode ↗ | |
| 114 | Flatten Binary Tree to Linked List | Medium | 17 | Linked List, Stack, Tree, Depth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 366 | Find Leaves of Binary Tree Premium | Medium | 17 | Tree, Depth-First Search, Binary Tree, DP on Trees | Solution · LeetCode ↗ | |
| 1483 | Kth Ancestor of a Tree Node | Hard | 17 | Binary Search, Dynamic Programming, Bit Manipulation, Tree, Depth-First Search, Breadth-First Search, Design, Binary Lifting | Solution · LeetCode ↗ | |
| 2096 | Step-By-Step Directions From a Binary Tree Node to Another | Medium | 17 | String, Tree, Depth-First Search, Binary Tree, Binary Lifting, Lowest Common Ancestor | Solution · LeetCode ↗ | |
| 450 | Delete Node in a BST | Medium | 12 | Tree, Binary Search Tree, Binary Tree | Solution · LeetCode ↗ | |
| 116 | Populating Next Right Pointers in Each Node | Medium | 12 | Linked List, Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 1161 | Maximum Level Sum of a Binary Tree | Medium | 12 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 572 | Subtree of Another Tree | Easy | 12 | Tree, Depth-First Search, String Matching, Binary Tree, Hash Function | Solution · LeetCode ↗ | |
| 1022 | Sum of Root To Leaf Binary Numbers | Easy | 12 | Tree, Depth-First Search, Binary Tree | LeetCode ↗ | |
| 107 | Binary Tree Level Order Traversal II | Medium | 12 | Tree, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 427 | Construct Quad Tree | Medium | 12 | Array, Divide and Conquer, Tree, Matrix | Solution · LeetCode ↗ | |
| 404 | Sum of Left Leaves | Easy | 12 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | LeetCode ↗ | |
| 2196 | Create Binary Tree From Descriptions | Medium | 12 | Array, Hash Table, Tree, Binary Tree | Solution · LeetCode ↗ | |
| 106 | Construct Binary Tree from Inorder and Postorder Traversal | Medium | 12 | Array, Hash Table, Divide and Conquer, Tree, Binary Tree | Solution · LeetCode ↗ | |
| 987 | Vertical Order Traversal of a Binary Tree | Hard | 12 | Hash Table, Tree, Depth-First Search, Breadth-First Search, Sorting, Binary Tree | Solution · LeetCode ↗ | |
| 965 | Univalued Binary Tree | Easy | 12 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | LeetCode ↗ | |
| 979 | Distribute Coins in Binary Tree | Medium | 12 | Tree, Depth-First Search, Binary Tree, DP on Trees | Solution · LeetCode ↗ |
22 solved on the pattern page (step-by-step explanation and a step-through player), 1 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 207 | Course Schedule | Medium | 44 | Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Directed Acyclic Graph | Solution · LeetCode ↗ | |
| 547 | Number of Provinces | Medium | 37 | Depth-First Search, Breadth-First Search, Union-Find, Graph Theory | Solution · LeetCode ↗ | |
| 329 | Longest Increasing Path in a Matrix | Hard | 31 | Array, Dynamic Programming, Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Memoization, Matrix, Directed Acyclic Graph | Solution · LeetCode ↗ | |
| 3481 | Apply Substitutions Premium | Medium | 28 | Array, Hash Table, String, Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort | Solution · LeetCode ↗ | |
| 133 | Clone Graph | Medium | 28 | Hash Table, Depth-First Search, Breadth-First Search, Graph Theory | Solution · LeetCode ↗ | |
| 399 | Evaluate Division | Medium | 22 | Array, String, Depth-First Search, Breadth-First Search, Union-Find, Graph Theory, Shortest Path, Bellman–Ford Algorithm, Floyd–Warshall Algorithm | Solution · LeetCode ↗ | |
| 210 | Course Schedule II | Medium | 17 | Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort | Solution · LeetCode ↗ | |
| 444 | Sequence Reconstruction Premium | Medium | 17 | Array, Graph Theory, Topological Sort, Directed Acyclic Graph | Solution · LeetCode ↗ | |
| 269 | Alien Dictionary Premium | Hard | 17 | Array, String, Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Directed Acyclic Graph | Solution · LeetCode ↗ | |
| 463 | Island Perimeter | Easy | 17 | Array, Depth-First Search, Breadth-First Search, Matrix | LeetCode ↗ | |
| 332 | Reconstruct Itinerary | Hard | 17 | Array, String, Depth-First Search, Graph Theory, Sorting, Heap (Priority Queue), Eulerian Circuit, Eulerian Path, Semi-Eulerian Graph | Solution · LeetCode ↗ | |
| 1376 | Time Needed to Inform All Employees | Medium | 12 | Tree, Depth-First Search, Breadth-First Search | Solution · LeetCode ↗ | |
| 1448 | Count Good Nodes in Binary Tree | Medium | 12 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 386 | Lexicographical Numbers | Medium | 12 | Depth-First Search, Trie | Solution · LeetCode ↗ | |
| 1192 | Critical Connections in a Network | Hard | 12 | Depth-First Search, Graph Theory, Biconnected Component, Bridge (Graph) | Solution · LeetCode ↗ | |
| 440 | K-th Smallest in Lexicographical Order | Hard | 12 | Trie | Solution · LeetCode ↗ | |
| 2421 | Number of Good Paths | Hard | 12 | Array, Hash Table, Tree, Union-Find, Graph Theory, Sorting | Solution · LeetCode ↗ | |
| 1466 | Reorder Routes to Make All Paths Lead to the City Zero | Medium | 12 | Depth-First Search, Breadth-First Search, Graph Theory | Solution · LeetCode ↗ | |
| 841 | Keys and Rooms | Medium | 12 | Depth-First Search, Breadth-First Search, Graph Theory | Solution · LeetCode ↗ | |
| 3203 | Find Minimum Diameter After Merging Two Trees | Hard | 12 | Tree, Depth-First Search, Breadth-First Search, Graph Theory | Solution · LeetCode ↗ | |
| 3310 | Remove Methods From Project | Medium | 12 | Depth-First Search, Breadth-First Search, Graph Theory | Solution · LeetCode ↗ | |
| 129 | Sum Root to Leaf Numbers | Medium | 12 | Tree, Depth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 1306 | Jump Game III | Medium | 12 | Array, Depth-First Search, Breadth-First Search | Solution · LeetCode ↗ |
18 solved on the pattern page (step-by-step explanation and a step-through player).
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 994 | Rotting Oranges | Medium | 46 | Array, Breadth-First Search, Matrix | Solution · LeetCode ↗ | |
| 127 | Word Ladder | Hard | 37 | Hash Table, String, Breadth-First Search, Bidirectional Search | Solution · LeetCode ↗ | |
| 815 | Bus Routes | Hard | 31 | Array, Hash Table, Breadth-First Search | Solution · LeetCode ↗ | |
| 126 | Word Ladder II | Hard | 28 | Hash Table, String, Backtracking, Breadth-First Search, Bidirectional Search | Solution · LeetCode ↗ | |
| 542 | 01 Matrix | Medium | 25 | Array, Dynamic Programming, Breadth-First Search, Matrix | Solution · LeetCode ↗ | |
| 863 | All Nodes Distance K in Binary Tree | Medium | 22 | Hash Table, Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 3629 | Minimum Jumps to Reach End via Prime Teleportation | Medium | 17 | Array, Hash Table, Math, Breadth-First Search, Number Theory | Solution · LeetCode ↗ | |
| 111 | Minimum Depth of Binary Tree | Easy | 17 | Tree, Depth-First Search, Breadth-First Search, Binary Tree | Solution · LeetCode ↗ | |
| 310 | Minimum Height Trees | Medium | 17 | Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort | Solution · LeetCode ↗ | |
| 2045 | Second Minimum Time to Reach Destination | Hard | 17 | Breadth-First Search, Graph Theory, Shortest Path, Dijkstra's Algorithm, K Shortest Path | Solution · LeetCode ↗ | |
| 1091 | Shortest Path in Binary Matrix | Medium | 12 | Array, Breadth-First Search, Matrix | Solution · LeetCode ↗ | |
| 934 | Shortest Bridge | Medium | 12 | Array, Depth-First Search, Breadth-First Search, Matrix | Solution · LeetCode ↗ | |
| 847 | Shortest Path Visiting All Nodes | Hard | 12 | Dynamic Programming, Bit Manipulation, Breadth-First Search, Graph Theory, Bitmask | Solution · LeetCode ↗ | |
| 1345 | Jump Game IV | Hard | 12 | Array, Hash Table, Breadth-First Search | Solution · LeetCode ↗ | |
| 1129 | Shortest Path with Alternating Colors | Medium | 12 | Breadth-First Search, Graph Theory | Solution · LeetCode ↗ | |
| 433 | Minimum Genetic Mutation | Medium | 12 | Hash Table, String, Breadth-First Search, Bidirectional Search | Solution · LeetCode ↗ | |
| 864 | Shortest Path to Get All Keys | Hard | 12 | Array, Bit Manipulation, Breadth-First Search, Matrix | Solution · LeetCode ↗ | |
| 286 | Walls and Gates Premium | Medium | 12 | Array, Breadth-First Search, Matrix | Solution · LeetCode ↗ |
17 solved on the pattern page (step-by-step explanation and a step-through player), 6 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 200 | Number of Islands | Medium | 58 | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ | |
| 48 | Rotate Image | Medium | 54 | Array, Math, Matrix | Solution · LeetCode ↗ | |
| 54 | Spiral Matrix | Medium | 53 | Array, Matrix, Simulation | Solution · LeetCode ↗ | |
| 73 | Set Matrix Zeroes | Medium | 39 | Array, Hash Table, Matrix | Solution · LeetCode ↗ | |
| 130 | Surrounded Regions | Medium | 33 | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ | |
| 2965 | Find Missing and Repeated Values | Easy | 31 | Array, Hash Table, Math, Matrix | LeetCode ↗ | |
| 778 | Swim in Rising Water | Hard | 28 | Array, Binary Search, Depth-First Search, Breadth-First Search, Union-Find, Minimax, Heap (Priority Queue), Matrix, Dijkstra's Algorithm | Solution · LeetCode ↗ | |
| 417 | Pacific Atlantic Water Flow | Medium | 25 | Array, Depth-First Search, Breadth-First Search, Matrix | Solution · LeetCode ↗ | |
| 733 | Flood Fill | Easy | 22 | Array, Depth-First Search, Breadth-First Search, Matrix | Solution · LeetCode ↗ | |
| 1254 | Number of Closed Islands | Medium | 17 | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ | |
| 3567 | Minimum Absolute Difference in Sliding Submatrix | Medium | 17 | Array, Sorting, Matrix | Solution · LeetCode ↗ | |
| 2022 | Convert 1D Array Into 2D Array | Easy | 17 | Array, Matrix, Simulation | LeetCode ↗ | |
| 1559 | Detect Cycles in 2D Grid | Medium | 17 | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ | |
| 566 | Reshape the Matrix | Easy | 17 | Array, Matrix, Simulation | LeetCode ↗ | |
| 695 | Max Area of Island | Medium | 17 | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ | |
| 1260 | Shift 2D Grid | Easy | 17 | Array, Matrix, Simulation | LeetCode ↗ | |
| 1672 | Richest Customer Wealth | Easy | 17 | Array, Matrix | LeetCode ↗ | |
| 407 | Trapping Rain Water II | Hard | 12 | Array, Breadth-First Search, Heap (Priority Queue), Matrix | Solution · LeetCode ↗ | |
| 2946 | Matrix Similarity After Cyclic Shifts | Easy | 12 | Array, Math, Matrix, Simulation | LeetCode ↗ | |
| 874 | Walking Robot Simulation | Medium | 12 | Array, Hash Table, Simulation | Solution · LeetCode ↗ | |
| 1391 | Check if There is a Valid Path in a Grid | Medium | 12 | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ | |
| 1914 | Cyclically Rotating a Grid | Medium | 12 | Array, Matrix, Simulation | Solution · LeetCode ↗ | |
| 2768 | Number of Black Blocks | Medium | 12 | Array, Hash Table, Enumeration | Solution · LeetCode ↗ |
22 solved on the pattern page (step-by-step explanation and a step-through player), 1 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 22 | Generate Parentheses | Medium | 53 | String, Dynamic Programming, Backtracking, Bracket Sequences | Solution · LeetCode ↗ | |
| 17 | Letter Combinations of a Phone Number | Medium | 50 | Hash Table, String, Backtracking | Solution · LeetCode ↗ | |
| 51 | N-Queens | Hard | 50 | Array, Backtracking, Algorithm X | Solution · LeetCode ↗ | |
| 39 | Combination Sum | Medium | 47 | Array, Backtracking | Solution · LeetCode ↗ | |
| 46 | Permutations | Medium | 46 | Array, Backtracking | Solution · LeetCode ↗ | |
| 78 | Subsets | Medium | 39 | Array, Backtracking, Bit Manipulation | Solution · LeetCode ↗ | |
| 90 | Subsets II | Medium | 37 | Array, Backtracking, Bit Manipulation | Solution · LeetCode ↗ | |
| 131 | Palindrome Partitioning | Medium | 37 | String, Dynamic Programming, Backtracking | Solution · LeetCode ↗ | |
| 79 | Word Search | Medium | 33 | Array, String, Backtracking, Depth-First Search, Matrix | Solution · LeetCode ↗ | |
| 37 | Sudoku Solver | Hard | 25 | Array, Hash Table, Backtracking, Matrix, Algorithm X, Dancing Links | Solution · LeetCode ↗ | |
| 60 | Permutation Sequence | Hard | 25 | Math, Recursion | Solution · LeetCode ↗ | |
| 77 | Combinations | Medium | 25 | Backtracking | Solution · LeetCode ↗ | |
| 47 | Permutations II | Medium | 25 | Array, Backtracking, Sorting | Solution · LeetCode ↗ | |
| 1291 | Sequential Digits | Medium | 25 | Enumeration | Solution · LeetCode ↗ | |
| 40 | Combination Sum II | Medium | 22 | Array, Backtracking | Solution · LeetCode ↗ | |
| 1415 | The k-th Lexicographical String of All Happy Strings of Length n | Medium | 17 | String, Backtracking | Solution · LeetCode ↗ | |
| 679 | 24 Game | Hard | 17 | Array, Math, Backtracking | Solution · LeetCode ↗ | |
| 784 | Letter Case Permutation | Medium | 17 | String, Backtracking, Bit Manipulation | Solution · LeetCode ↗ | |
| 257 | Binary Tree Paths | Easy | 12 | String, Backtracking, Tree, Depth-First Search, Binary Tree | LeetCode ↗ | |
| 212 | Word Search II | Hard | 12 | Array, String, Backtracking, Trie, Matrix | Solution · LeetCode ↗ | |
| 1240 | Tiling a Rectangle with the Fewest Squares | Hard | 12 | Backtracking | Solution · LeetCode ↗ | |
| 3348 | Smallest Divisible Digit Product II | Hard | 12 | Math, String, Backtracking, Greedy, Number Theory | Solution · LeetCode ↗ | |
| 1723 | Find Minimum Time to Finish All Jobs | Hard | 12 | Array, Dynamic Programming, Backtracking, Bit Manipulation, Bitmask | Solution · LeetCode ↗ |
88 solved on the pattern page (step-by-step explanation and a step-through player), 4 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 53 | Maximum Subarray | Medium | 59 | Array, Divide and Conquer, Dynamic Programming | Solution · LeetCode ↗ | |
| 198 | House Robber | Medium | 51 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 70 | Climbing Stairs | Easy | 50 | Math, Dynamic Programming, Memoization | Solution · LeetCode ↗ | |
| 152 | Maximum Product Subarray | Medium | 45 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 322 | Coin Change | Medium | 45 | Array, Dynamic Programming, Breadth-First Search, Knapsack Problem, Complete Knapsack | Solution · LeetCode ↗ | |
| 118 | Pascal's Triangle | Easy | 44 | Array, Dynamic Programming | LeetCode ↗ | |
| 10 | Regular Expression Matching | Hard | 43 | String, Dynamic Programming, Recursion | Solution · LeetCode ↗ | |
| 509 | Fibonacci Number | Easy | 43 | Math, Dynamic Programming, Recursion, Memoization | Solution · LeetCode ↗ | |
| 300 | Longest Increasing Subsequence | Medium | 41 | Array, Binary Search, Dynamic Programming, Longest Increasing Subsequence | Solution · LeetCode ↗ | |
| 416 | Partition Equal Subset Sum | Medium | 41 | Array, Dynamic Programming, Knapsack Problem, 0-1 Knapsack | Solution · LeetCode ↗ | |
| 62 | Unique Paths | Medium | 40 | Math, Dynamic Programming, Combinatorics | Solution · LeetCode ↗ | |
| 32 | Longest Valid Parentheses | Hard | 37 | String, Dynamic Programming, Stack, Bracket Sequences | Solution · LeetCode ↗ | |
| 72 | Edit Distance | Medium | 37 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 486 | Predict the Winner | Medium | 35 | Array, Math, Dynamic Programming, Recursion, Minimax, Game Theory, Zero-Sum Game | Solution · LeetCode ↗ | |
| 139 | Word Break | Medium | 33 | Array, Hash Table, String, Dynamic Programming, Trie, Memoization, Brute-Force Search | Solution · LeetCode ↗ | |
| 877 | Stone Game | Medium | 33 | Array, Math, Dynamic Programming, Minimax, Game Theory, Zero-Sum Game | Solution · LeetCode ↗ | |
| 312 | Burst Balloons | Hard | 31 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 44 | Wildcard Matching | Hard | 31 | String, Dynamic Programming, Greedy, Recursion | Solution · LeetCode ↗ | |
| 746 | Min Cost Climbing Stairs | Easy | 31 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 1406 | Stone Game III | Hard | 31 | Array, Math, Dynamic Programming, Minimax, Game Theory, Zero-Sum Game | Solution · LeetCode ↗ | |
| 494 | Target Sum | Medium | 28 | Array, Dynamic Programming, Backtracking, Knapsack Problem, 0-1 Knapsack | Solution · LeetCode ↗ | |
| 518 | Coin Change II | Medium | 28 | Array, Dynamic Programming, Knapsack Problem, Complete Knapsack | Solution · LeetCode ↗ | |
| 3225 | Maximum Score From Grid Operations | Hard | 28 | Array, Dynamic Programming, Matrix, Prefix Sum | Solution · LeetCode ↗ | |
| 3742 | Maximum Path Score in a Grid | Medium | 28 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 213 | House Robber II | Medium | 25 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 221 | Maximal Square | Medium | 25 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 1143 | Longest Common Subsequence | Medium | 25 | String, Dynamic Programming, Longest Common Subsequence | Solution · LeetCode ↗ | |
| 368 | Largest Divisible Subset | Medium | 25 | Array, Math, Dynamic Programming, Sorting | Solution · LeetCode ↗ | |
| 3592 | Inverse Coin Change | Medium | 25 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 931 | Minimum Falling Path Sum | Medium | 25 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 983 | Minimum Cost For Tickets | Medium | 25 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 918 | Maximum Sum Circular Subarray | Medium | 25 | Array, Divide and Conquer, Dynamic Programming, Queue, Monotonic Queue | Solution · LeetCode ↗ | |
| 1140 | Stone Game II | Medium | 25 | Array, Math, Dynamic Programming, Minimax, Prefix Sum, Game Theory, Zero-Sum Game | Solution · LeetCode ↗ | |
| 3738 | Longest Non-Decreasing Subarray After Replacing at Most One Element | Medium | 22 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 1137 | N-th Tribonacci Number | Easy | 22 | Math, Dynamic Programming, Memoization | LeetCode ↗ | |
| 714 | Best Time to Buy and Sell Stock with Transaction Fee | Medium | 22 | Array, Dynamic Programming, Greedy | Solution · LeetCode ↗ | |
| 63 | Unique Paths II | Medium | 22 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 64 | Minimum Path Sum | Medium | 22 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 91 | Decode Ways | Medium | 22 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 1043 | Partition Array for Maximum Sum | Medium | 22 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 741 | Cherry Pickup | Hard | 22 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 3660 | Jump Game IX | Medium | 22 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 87 | Scramble String | Hard | 22 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 132 | Palindrome Partitioning II | Hard | 22 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 403 | Frog Jump | Hard | 22 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 3700 | Number of ZigZag Arrays II | Hard | 22 | Math, Dynamic Programming | Solution · LeetCode ↗ | |
| 120 | Triangle | Medium | 17 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 97 | Interleaving String | Medium | 17 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 343 | Integer Break | Medium | 17 | Math, Dynamic Programming | Solution · LeetCode ↗ | |
| 233 | Number of Digit One | Hard | 17 | Math, Dynamic Programming, Recursion | Solution · LeetCode ↗ | |
| 799 | Champagne Tower | Medium | 17 | Dynamic Programming | Solution · LeetCode ↗ | |
| 3743 | Maximize Cyclic Partition Score | Hard | 17 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 1320 | Minimum Distance to Type a Word Using Two Fingers | Hard | 17 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 673 | Number of Longest Increasing Subsequence | Medium | 17 | Array, Dynamic Programming, Binary Indexed Tree, Segment Tree, Longest Increasing Subsequence | Solution · LeetCode ↗ | |
| 546 | Remove Boxes | Hard | 17 | Array, Dynamic Programming, Memoization | Solution · LeetCode ↗ | |
| 1049 | Last Stone Weight II | Medium | 17 | Array, Dynamic Programming, Knapsack Problem, 0-1 Knapsack | Solution · LeetCode ↗ | |
| 396 | Rotate Function | Medium | 17 | Array, Math, Dynamic Programming | Solution · LeetCode ↗ | |
| 788 | Rotated Digits | Medium | 17 | Math, Dynamic Programming | Solution · LeetCode ↗ | |
| 516 | Longest Palindromic Subsequence | Medium | 17 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 1340 | Jump Game V | Hard | 17 | Array, Dynamic Programming, Sorting | Solution · LeetCode ↗ | |
| 3962 | Maximum Subarray Sum After at Most K Swaps | Hard | 17 | Solution · LeetCode ↗ | ||
| 790 | Domino and Tromino Tiling | Medium | 17 | Dynamic Programming | Solution · LeetCode ↗ | |
| 1749 | Maximum Absolute Sum of Any Subarray | Medium | 17 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 2484 | Count Palindromic Subsequences | Hard | 17 | String, Dynamic Programming | Solution · LeetCode ↗ | |
| 1301 | Number of Paths with Max Score | Hard | 17 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 4002 | Count Valid Sequences | Medium | 17 | Solution · LeetCode ↗ | ||
| 174 | Dungeon Game | Hard | 17 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 1510 | Stone Game IV | Hard | 17 | Math, Dynamic Programming, Minimax, Game Theory, Nim Game, Sprague–Grundy Theorem, Zero-Sum Game | Solution · LeetCode ↗ | |
| 1277 | Count Square Submatrices with All Ones | Medium | 12 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 377 | Combination Sum IV | Medium | 12 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 1048 | Longest String Chain | Medium | 12 | Array, Hash Table, Two Pointers, String, Dynamic Programming, Sorting | Solution · LeetCode ↗ | |
| 309 | Best Time to Buy and Sell Stock with Cooldown | Medium | 12 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 119 | Pascal's Triangle II | Easy | 12 | Array, Dynamic Programming | LeetCode ↗ | |
| 2140 | Solving Questions With Brainpower | Medium | 12 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 3753 | Total Waviness of Numbers in Range II | Hard | 12 | Math, Dynamic Programming | Solution · LeetCode ↗ | |
| 3751 | Total Waviness of Numbers in Range I | Medium | 12 | Math, Dynamic Programming, Enumeration | Solution · LeetCode ↗ | |
| 2400 | Number of Ways to Reach a Position After Exactly k Steps | Medium | 12 | Math, Dynamic Programming, Combinatorics | Solution · LeetCode ↗ | |
| 3573 | Best Time to Buy and Sell Stock V | Medium | 12 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 647 | Palindromic Substrings | Medium | 12 | Two Pointers, String, Dynamic Programming | Solution · LeetCode ↗ | |
| 583 | Delete Operation for Two Strings | Medium | 12 | String, Dynamic Programming, Longest Common Subsequence | Solution · LeetCode ↗ | |
| 3976 | Maximum Subarray Sum After Multiplier | Medium | 12 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 188 | Best Time to Buy and Sell Stock IV | Hard | 12 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 879 | Profitable Schemes | Hard | 12 | Array, Dynamic Programming, Knapsack Problem, 0-1 Knapsack | Solution · LeetCode ↗ | |
| 3336 | Find the Number of Subsequences With Equal GCD | Hard | 12 | Array, Math, Dynamic Programming, Number Theory, Euclidean Algorithm, Greatest Common Divisor | Solution · LeetCode ↗ | |
| 1884 | Egg Drop With 2 Eggs and N Floors | Medium | 12 | Math, Dynamic Programming | Solution · LeetCode ↗ | |
| 740 | Delete and Earn | Medium | 12 | Array, Hash Table, Dynamic Programming | Solution · LeetCode ↗ | |
| 1092 | Shortest Common Supersequence | Hard | 12 | String, Dynamic Programming, Longest Common Subsequence | Solution · LeetCode ↗ | |
| 2376 | Count Special Integers | Hard | 12 | Math, Dynamic Programming | Solution · LeetCode ↗ | |
| 123 | Best Time to Buy and Sell Stock III | Hard | 12 | Array, Dynamic Programming | Solution · LeetCode ↗ | |
| 1463 | Cherry Pickup II | Hard | 12 | Array, Dynamic Programming, Matrix | Solution · LeetCode ↗ | |
| 638 | Shopping Offers | Medium | 12 | Array, Dynamic Programming, Backtracking, Bit Manipulation, Memoization, Bitmask, Knapsack Problem, Complete Knapsack | Solution · LeetCode ↗ | |
| 338 | Counting Bits | Easy | 12 | Dynamic Programming, Bit Manipulation | LeetCode ↗ |
32 solved on the pattern page (step-by-step explanation and a step-through player), 11 Easy warm-ups that link to LeetCode.
15 solved on the pattern page (step-by-step explanation and a step-through player), 6 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 20 | Valid Parentheses | Easy | 61 | String, Stack, Bracket Sequences | Solution · LeetCode ↗ | |
| 394 | Decode String | Medium | 46 | String, Stack, Recursion | Solution · LeetCode ↗ | |
| 155 | Min Stack | Medium | 43 | Stack, Design | Solution · LeetCode ↗ | |
| 224 | Basic Calculator | Hard | 35 | Math, String, Stack, Recursion | Solution · LeetCode ↗ | |
| 232 | Implement Queue using Stacks | Easy | 35 | Stack, Design, Queue | LeetCode ↗ | |
| 225 | Implement Stack using Queues | Easy | 33 | Stack, Design, Queue | LeetCode ↗ | |
| 1047 | Remove All Adjacent Duplicates In String | Easy | 33 | String, Stack | LeetCode ↗ | |
| 150 | Evaluate Reverse Polish Notation | Medium | 25 | Array, Math, Stack | Solution · LeetCode ↗ | |
| 921 | Minimum Add to Make Parentheses Valid | Medium | 25 | String, Stack, Greedy, Bracket Sequences | Solution · LeetCode ↗ | |
| 735 | Asteroid Collision | Medium | 22 | Array, Stack, Simulation | Solution · LeetCode ↗ | |
| 71 | Simplify Path | Medium | 22 | String, Stack | Solution · LeetCode ↗ | |
| 1021 | Remove Outermost Parentheses | Easy | 22 | String, Stack, Bracket Sequences | LeetCode ↗ | |
| 678 | Valid Parenthesis String | Medium | 22 | String, Dynamic Programming, Stack, Greedy, Bracket Sequences | Solution · LeetCode ↗ | |
| 636 | Exclusive Time of Functions | Medium | 17 | Array, Stack | Solution · LeetCode ↗ | |
| 227 | Basic Calculator II | Medium | 17 | Math, String, Stack | Solution · LeetCode ↗ | |
| 1441 | Build an Array With Stack Operations | Medium | 17 | Array, Stack, Simulation | Solution · LeetCode ↗ | |
| 1614 | Maximum Nesting Depth of the Parentheses | Easy | 17 | String, Stack, Bracket Sequences | LeetCode ↗ | |
| 362 | Design Hit Counter Premium | Medium | 12 | Array, Binary Search, Design, Queue, Data Stream | Solution · LeetCode ↗ | |
| 622 | Design Circular Queue | Medium | 12 | Array, Linked List, Design, Queue | Solution · LeetCode ↗ | |
| 1700 | Number of Students Unable to Eat Lunch | Easy | 12 | Array, Stack, Queue, Simulation | LeetCode ↗ | |
| 641 | Design Circular Deque | Medium | 12 | Array, Linked List, Design, Queue | Solution · LeetCode ↗ |
25 solved on the pattern page (step-by-step explanation and a step-through player), 14 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 55 | Jump Game | Medium | 50 | Array, Dynamic Programming, Greedy | Solution · LeetCode ↗ | |
| 1502 | Can Make Arithmetic Progression From Sequence | Easy | 47 | Array, Sorting | LeetCode ↗ | |
| 122 | Best Time to Buy and Sell Stock II | Medium | 44 | Array, Dynamic Programming, Greedy | Solution · LeetCode ↗ | |
| 912 | Sort an Array | Medium | 43 | Array, Divide and Conquer, Sorting, Heap (Priority Queue), Merge Sort, Bucket Sort, Radix Sort, Counting Sort | Solution · LeetCode ↗ | |
| 45 | Jump Game II | Medium | 40 | Array, Dynamic Programming, Greedy | Solution · LeetCode ↗ | |
| 3731 | Find Missing Elements | Easy | 35 | Array, Hash Table, Sorting | LeetCode ↗ | |
| 179 | Largest Number | Medium | 33 | Array, String, Greedy, Sorting | Solution · LeetCode ↗ | |
| 3635 | Earliest Finish Time for Land and Water Rides II | Medium | 31 | Array, Two Pointers, Binary Search, Greedy, Sorting | Solution · LeetCode ↗ | |
| 605 | Can Place Flowers | Easy | 28 | Array, Greedy | LeetCode ↗ | |
| 135 | Candy | Hard | 28 | Array, Greedy | Solution · LeetCode ↗ | |
| 2996 | Smallest Missing Integer Greater Than Sequential Prefix Sum | Easy | 28 | Array, Hash Table, Sorting | LeetCode ↗ | |
| 414 | Third Maximum Number | Easy | 25 | Array, Sorting | LeetCode ↗ | |
| 1331 | Rank Transform of an Array | Easy | 25 | Array, Hash Table, Sorting | LeetCode ↗ | |
| 761 | Special Binary String | Hard | 22 | String, Divide and Conquer, Sorting | Solution · LeetCode ↗ | |
| 1727 | Largest Submatrix With Rearrangements | Medium | 22 | Array, Greedy, Sorting, Matrix | Solution · LeetCode ↗ | |
| 3474 | Lexicographically Smallest Generated String | Hard | 22 | String, Greedy, String Matching | Solution · LeetCode ↗ | |
| 860 | Lemonade Change | Easy | 22 | Array, Greedy | LeetCode ↗ | |
| 2784 | Check if Array is Good | Easy | 22 | Array, Hash Table, Sorting | LeetCode ↗ | |
| 274 | H-Index | Medium | 22 | Array, Sorting, Counting Sort | Solution · LeetCode ↗ | |
| 1846 | Maximum Element After Decreasing and Rearranging | Medium | 22 | Array, Greedy, Sorting | Solution · LeetCode ↗ | |
| 3499 | Maximize Active Section with Trade I | Medium | 22 | String, Enumeration | Solution · LeetCode ↗ | |
| 134 | Gas Station | Medium | 17 | Array, Greedy | Solution · LeetCode ↗ | |
| 1296 | Divide Array in Sets of K Consecutive Numbers | Medium | 17 | Array, Hash Table, Greedy, Sorting | Solution · LeetCode ↗ | |
| 1689 | Partitioning Into Minimum Number Of Deci-Binary Numbers | Medium | 17 | String, Greedy | Solution · LeetCode ↗ | |
| 561 | Array Partition | Easy | 17 | Array, Greedy, Sorting, Counting Sort | LeetCode ↗ | |
| 1665 | Minimum Initial Energy to Finish Tasks | Hard | 17 | Array, Greedy, Sorting | Solution · LeetCode ↗ | |
| 846 | Hand of Straights | Medium | 17 | Array, Hash Table, Greedy, Sorting | Solution · LeetCode ↗ | |
| 406 | Queue Reconstruction by Height | Medium | 12 | Array, Binary Indexed Tree, Segment Tree, Sorting | Solution · LeetCode ↗ | |
| 409 | Longest Palindrome | Easy | 12 | Hash Table, String, Greedy | LeetCode ↗ | |
| 2094 | Finding 3-Digit Even Numbers | Easy | 12 | Array, Hash Table, Recursion, Sorting, Enumeration | LeetCode ↗ | |
| 2078 | Two Furthest Houses With Different Colors | Easy | 12 | Array, Greedy | LeetCode ↗ | |
| 2126 | Destroying Asteroids | Medium | 12 | Array, Greedy, Sorting | Solution · LeetCode ↗ | |
| 2895 | Minimum Processing Time | Medium | 12 | Array, Greedy, Sorting | Solution · LeetCode ↗ | |
| 3689 | Maximum Total Subarray Value I | Medium | 12 | Array, Greedy | Solution · LeetCode ↗ | |
| 164 | Maximum Gap | Medium | 12 | Array, Sorting, Bucket Sort, Radix Sort, Pigeonhole Principle | Solution · LeetCode ↗ | |
| 1833 | Maximum Ice Cream Bars | Medium | 12 | Array, Greedy, Sorting, Counting Sort | Solution · LeetCode ↗ | |
| 1589 | Maximum Sum Obtained of Any Permutation | Medium | 12 | Array, Greedy, Sorting, Prefix Sum | Solution · LeetCode ↗ | |
| 1710 | Maximum Units on a Truck | Easy | 12 | Array, Greedy, Sorting | LeetCode ↗ | |
| 1365 | How Many Numbers Are Smaller Than the Current Number | Easy | 12 | Array, Hash Table, Sorting, Counting Sort | LeetCode ↗ |
9 solved on the pattern page (step-by-step explanation and a step-through player), 4 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 146 | LRU Cache | Medium | 53 | Hash Table, Linked List, Design, Doubly-Linked List | Solution · LeetCode ↗ | |
| 359 | Logger Rate Limiter Premium | Easy | 43 | Hash Table, Design, Data Stream | LeetCode ↗ | |
| 421 | Maximum XOR of Two Numbers in an Array | Medium | 39 | Array, Hash Table, Bit Manipulation, Trie | Solution · LeetCode ↗ | |
| 380 | Insert Delete GetRandom O(1) | Medium | 35 | Array, Hash Table, Math, Design, Randomized | Solution · LeetCode ↗ | |
| 208 | Implement Trie (Prefix Tree) | Medium | 33 | Hash Table, String, Design, Trie | Solution · LeetCode ↗ | |
| 3043 | Find the Length of the Longest Common Prefix | Medium | 31 | Array, Hash Table, String, Trie | Solution · LeetCode ↗ | |
| 460 | LFU Cache | Hard | 25 | Hash Table, Linked List, Design, Doubly-Linked List | Solution · LeetCode ↗ | |
| 933 | Number of Recent Calls | Easy | 25 | Design, Queue, Data Stream | LeetCode ↗ | |
| 642 | Design Search Autocomplete System Premium | Hard | 22 | String, Depth-First Search, Design, Trie, Sorting, Heap (Priority Queue), Data Stream | Solution · LeetCode ↗ | |
| 2452 | Words Within Two Edits of Dictionary | Medium | 17 | Array, String, Trie | Solution · LeetCode ↗ | |
| 1603 | Design Parking System | Easy | 12 | Design, Simulation, Counting | LeetCode ↗ | |
| 346 | Moving Average from Data Stream Premium | Easy | 12 | Array, Design, Queue, Data Stream | LeetCode ↗ | |
| 588 | Design In-Memory File System Premium | Hard | 12 | Hash Table, String, Design, Trie, Sorting | Solution · LeetCode ↗ |
9 solved on the pattern page (step-by-step explanation and a step-through player).
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 787 | Cheapest Flights Within K Stops | Medium | 37 | Dynamic Programming, Depth-First Search, Breadth-First Search, Graph Theory, Heap (Priority Queue), Shortest Path | Solution · LeetCode ↗ | |
| 743 | Network Delay Time | Medium | 33 | Depth-First Search, Breadth-First Search, Graph Theory, Heap (Priority Queue), Shortest Path, Dijkstra's Algorithm | Solution · LeetCode ↗ | |
| 1584 | Min Cost to Connect All Points | Medium | 22 | Array, Union-Find, Graph Theory, Minimum Spanning Tree, Prim's Algorithm, Kruskal's Algorithm, Borůvka's Algorithm | Solution · LeetCode ↗ | |
| 1631 | Path With Minimum Effort | Medium | 22 | Array, Binary Search, Depth-First Search, Breadth-First Search, Union-Find, Heap (Priority Queue), Matrix, Dijkstra's Algorithm | Solution · LeetCode ↗ | |
| 2812 | Find the Safest Path in a Grid | Medium | 17 | Array, Binary Search, Breadth-First Search, Union-Find, Heap (Priority Queue), Matrix | Solution · LeetCode ↗ | |
| 3286 | Find a Safe Walk Through a Grid | Medium | 17 | Array, Breadth-First Search, Graph Theory, Heap (Priority Queue), Matrix, Shortest Path | Solution · LeetCode ↗ | |
| 3600 | Maximize Spanning Tree Stability with Upgrades | Hard | 12 | Binary Search, Greedy, Union-Find, Graph Theory, Minimum Spanning Tree | Solution · LeetCode ↗ | |
| 1514 | Path with Maximum Probability | Medium | 12 | Array, Graph Theory, Heap (Priority Queue), Shortest Path, Dijkstra's Algorithm | Solution · LeetCode ↗ | |
| 1489 | Find Critical and Pseudo-Critical Edges in Minimum Spanning Tree | Hard | 12 | Union-Find, Graph Theory, Sorting, Minimum Spanning Tree, Strongly Connected Component, Prim's Algorithm, Kruskal's Algorithm, Borůvka's Algorithm | Solution · LeetCode ↗ |
19 solved on the pattern page (step-by-step explanation and a step-through player), 61 Easy warm-ups that link to LeetCode.
24 solved on the pattern page (step-by-step explanation and a step-through player), 48 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 9 | Palindrome Number | Easy | 72 | Math | LeetCode ↗ | |
| 7 | Reverse Integer | Medium | 64 | Math | Solution · LeetCode ↗ | |
| 231 | Power of Two | Easy | 50 | Math, Bit Manipulation, Recursion | LeetCode ↗ | |
| 50 | Pow(x, n) | Medium | 49 | Math, Recursion | Solution · LeetCode ↗ | |
| 2235 | Add Two Integers | Easy | 44 | Math | LeetCode ↗ | |
| 204 | Count Primes | Medium | 44 | Array, Math, Enumeration, Number Theory, Primality Test, Sieve Theory, Prime Number Sieve | Solution · LeetCode ↗ | |
| 67 | Add Binary | Easy | 43 | Math, String, Bit Manipulation, Simulation | LeetCode ↗ | |
| 136 | Single Number | Easy | 43 | Array, Bit Manipulation | LeetCode ↗ | |
| 66 | Plus One | Easy | 41 | Array, Math | LeetCode ↗ | |
| 645 | Set Mismatch | Easy | 39 | Array, Hash Table, Bit Manipulation, Sorting | LeetCode ↗ | |
| 29 | Divide Two Integers | Medium | 37 | Math, Bit Manipulation | Solution · LeetCode ↗ | |
| 628 | Maximum Product of Three Numbers | Easy | 37 | Array, Math, Sorting | LeetCode ↗ | |
| 1922 | Count Good Numbers | Medium | 33 | Math, Recursion | Solution · LeetCode ↗ | |
| 412 | Fizz Buzz | Easy | 33 | Math, String, Simulation | LeetCode ↗ | |
| 1295 | Find Numbers with Even Number of Digits | Easy | 33 | Array, Math | LeetCode ↗ | |
| 137 | Single Number II | Medium | 31 | Array, Bit Manipulation | Solution · LeetCode ↗ | |
| 190 | Reverse Bits | Easy | 31 | Divide and Conquer, Bit Manipulation | LeetCode ↗ | |
| 3014 | Minimum Number of Pushes to Type Word I | Easy | 31 | Math, String, Greedy | LeetCode ↗ | |
| 258 | Add Digits | Easy | 28 | Math, Simulation, Number Theory | LeetCode ↗ | |
| 168 | Excel Sheet Column Title | Easy | 28 | Math, String | LeetCode ↗ | |
| 1071 | Greatest Common Divisor of Strings | Easy | 28 | Math, String, Euclidean Algorithm, Greatest Common Divisor | LeetCode ↗ | |
| 1344 | Angle Between Hands of a Clock | Medium | 28 | Math | Solution · LeetCode ↗ | |
| 3312 | Sorted GCD Pair Queries | Hard | 28 | Array, Hash Table, Math, Binary Search, Combinatorics, Counting, Number Theory, Prefix Sum, Euclidean Algorithm, Greatest Common Divisor | Solution · LeetCode ↗ | |
| 3345 | Smallest Divisible Digit Product I | Easy | 28 | Math, Enumeration | LeetCode ↗ | |
| 389 | Find the Difference | Easy | 25 | Hash Table, String, Bit Manipulation, Sorting | LeetCode ↗ | |
| 371 | Sum of Two Integers | Medium | 25 | Math, Bit Manipulation | Solution · LeetCode ↗ | |
| 191 | Number of 1 Bits | Easy | 25 | Divide and Conquer, Bit Manipulation | LeetCode ↗ | |
| 507 | Perfect Number | Easy | 25 | Math | LeetCode ↗ | |
| 3658 | GCD of Odd and Even Sums | Easy | 25 | Math, Number Theory | LeetCode ↗ | |
| 415 | Add Strings | Easy | 22 | Math, String, Simulation | LeetCode ↗ | |
| 1512 | Number of Good Pairs | Easy | 22 | Array, Hash Table, Math, Counting | LeetCode ↗ | |
| 1518 | Water Bottles | Easy | 22 | Math, Simulation | LeetCode ↗ | |
| 2396 | Strictly Palindromic Number | Medium | 22 | Math, Two Pointers, Brainteaser | Solution · LeetCode ↗ | |
| 326 | Power of Three | Easy | 22 | Math, Recursion | LeetCode ↗ | |
| 3754 | Concatenate Non-Zero Digits and Multiply by Sum I | Easy | 22 | Math | LeetCode ↗ | |
| 3513 | Number of Unique XOR Triplets I | Medium | 22 | Array, Math, Bit Manipulation | Solution · LeetCode ↗ | |
| 172 | Factorial Trailing Zeroes | Medium | 17 | Math | Solution · LeetCode ↗ | |
| 504 | Base 7 | Easy | 17 | Math, String | LeetCode ↗ | |
| 868 | Binary Gap | Easy | 17 | Bit Manipulation | LeetCode ↗ | |
| 1356 | Sort Integers by The Number of 1 Bits | Easy | 17 | Array, Bit Manipulation, Sorting, Counting | LeetCode ↗ | |
| 1009 | Complement of Base 10 Integer | Easy | 17 | Bit Manipulation | LeetCode ↗ | |
| 461 | Hamming Distance | Easy | 17 | Bit Manipulation | LeetCode ↗ | |
| 3875 | Construct Uniform Parity Array I | Easy | 17 | Array, Math | LeetCode ↗ | |
| 2351 | First Letter to Appear Twice | Easy | 17 | Hash Table, String, Bit Manipulation, Counting | LeetCode ↗ | |
| 3896 | Minimum Operations to Transform Array into Alternating Prime | Medium | 17 | Array, Math, Two Pointers, Binary Search, Sorting, Number Theory | Solution · LeetCode ↗ | |
| 1154 | Day of the Year | Easy | 17 | Math, String | LeetCode ↗ | |
| 3300 | Minimum Element After Replacement With Digit Sum | Easy | 17 | Array, Math | LeetCode ↗ | |
| 2413 | Smallest Even Multiple | Easy | 17 | Math, Number Theory | LeetCode ↗ | |
| 292 | Nim Game | Easy | 17 | Math, Brainteaser, Minimax, Game Theory, Nim Game, Impartial Game | LeetCode ↗ | |
| 3536 | Maximum Product of Two Digits | Easy | 17 | Math, Sorting | LeetCode ↗ | |
| 843 | Guess the Word | Hard | 12 | Array, Math, String, Minimax, Interactive, Game Theory | Solution · LeetCode ↗ | |
| 693 | Binary Number with Alternating Bits | Easy | 12 | Bit Manipulation | LeetCode ↗ | |
| 223 | Rectangle Area | Medium | 12 | Math, Geometry | Solution · LeetCode ↗ | |
| 1523 | Count Odd Numbers in an Interval Range | Easy | 12 | Math | LeetCode ↗ | |
| 319 | Bulb Switcher | Medium | 12 | Math, Brainteaser | Solution · LeetCode ↗ | |
| 762 | Prime Number of Set Bits in Binary Representation | Easy | 12 | Math, Bit Manipulation, Primality Test | LeetCode ↗ | |
| 1680 | Concatenation of Consecutive Binary Numbers | Medium | 12 | Math, Bit Manipulation, Simulation | Solution · LeetCode ↗ | |
| 260 | Single Number III | Medium | 12 | Array, Bit Manipulation | Solution · LeetCode ↗ | |
| 3894 | Traffic Signal Color | Easy | 12 | Math, String, Simulation | LeetCode ↗ | |
| 3783 | Mirror Distance of an Integer | Easy | 12 | Math | LeetCode ↗ | |
| 1281 | Subtract the Product and Sum of Digits of an Integer | Easy | 12 | Math | LeetCode ↗ | |
| 2520 | Count the Digits That Divide a Number | Easy | 12 | Math | LeetCode ↗ | |
| 866 | Prime Palindrome | Medium | 12 | Math, Number Theory, Primality Test | Solution · LeetCode ↗ | |
| 1979 | Find Greatest Common Divisor of Array | Easy | 12 | Array, Math, Number Theory, Euclidean Algorithm, Greatest Common Divisor | LeetCode ↗ | |
| 754 | Reach a Number | Medium | 12 | Math, Binary Search | Solution · LeetCode ↗ | |
| 1684 | Count the Number of Consistent Strings | Easy | 12 | Array, Hash Table, String, Bit Manipulation, Counting | LeetCode ↗ | |
| 372 | Super Pow | Medium | 12 | Math, Divide and Conquer, Euler's Totient Function, Euler's Theorem | Solution · LeetCode ↗ | |
| 2600 | K Items With the Maximum Sum | Easy | 12 | Math, Greedy | LeetCode ↗ | |
| 1318 | Minimum Flips to Make a OR b Equal to c | Medium | 12 | Bit Manipulation | Solution · LeetCode ↗ | |
| 263 | Ugly Number | Easy | 12 | Math | LeetCode ↗ | |
| 1492 | The kth Factor of n | Medium | 12 | Math, Number Theory, Prime Factorization | Solution · LeetCode ↗ | |
| 3702 | Longest Subsequence With Non-Zero Bitwise XOR | Medium | 12 | Array, Bit Manipulation | Solution · LeetCode ↗ |
10 solved on the pattern page (step-by-step explanation and a step-through player).
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 721 | Accounts Merge | Medium | 25 | Array, Hash Table, String, Depth-First Search, Breadth-First Search, Union-Find, Sorting | Solution · LeetCode ↗ | |
| 1101 | The Earliest Moment When Everyone Become Friends Premium | Medium | 25 | Array, Union-Find, Sorting | Solution · LeetCode ↗ | |
| 1722 | Minimize Hamming Distance After Swap Operations | Medium | 25 | Array, Depth-First Search, Union-Find | Solution · LeetCode ↗ | |
| 3532 | Path Existence Queries in a Graph I | Medium | 25 | Array, Hash Table, Binary Search, Union-Find, Graph Theory | Solution · LeetCode ↗ | |
| 3534 | Path Existence Queries in a Graph II | Hard | 25 | Array, Two Pointers, Binary Search, Dynamic Programming, Greedy, Bit Manipulation, Graph Theory, Sorting | Solution · LeetCode ↗ | |
| 2492 | Minimum Score of a Path Between Two Cities | Medium | 22 | Depth-First Search, Breadth-First Search, Union-Find, Graph Theory | Solution · LeetCode ↗ | |
| 305 | Number of Islands II Premium | Hard | 17 | Array, Hash Table, Union-Find | Solution · LeetCode ↗ | |
| 947 | Most Stones Removed with Same Row or Column | Medium | 12 | Hash Table, Depth-First Search, Union-Find, Graph Theory, Bipartite Graph | Solution · LeetCode ↗ | |
| 1970 | Last Day Where You Can Still Cross | Hard | 12 | Array, Binary Search, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ | |
| 827 | Making A Large Island | Hard | 12 | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Solution · LeetCode ↗ |
10 solved on the pattern page (step-by-step explanation and a step-through player), 1 Easy warm-ups that link to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 493 | Reverse Pairs | Hard | 31 | Array, Binary Search, Divide and Conquer, Binary Indexed Tree, Segment Tree, Merge Sort, Ordered Set, Treap | Solution · LeetCode ↗ | |
| 3161 | Block Placement Queries | Hard | 28 | Array, Binary Search, Binary Indexed Tree, Segment Tree, Ordered Set | Solution · LeetCode ↗ | |
| 315 | Count of Smaller Numbers After Self | Hard | 25 | Array, Binary Search, Divide and Conquer, Binary Indexed Tree, Segment Tree, Merge Sort, Ordered Set, Treap | Solution · LeetCode ↗ | |
| 3501 | Maximize Active Section with Trade II | Hard | 22 | Array, String, Binary Search, Segment Tree | Solution · LeetCode ↗ | |
| 307 | Range Sum Query - Mutable | Medium | 17 | Array, Divide and Conquer, Design, Binary Indexed Tree, Segment Tree, Sqrt Decomposition | Solution · LeetCode ↗ | |
| 2213 | Longest Substring of One Repeating Character | Hard | 17 | Array, String, Segment Tree, Ordered Set | Solution · LeetCode ↗ | |
| 3691 | Maximum Total Subarray Value II | Hard | 12 | Array, Greedy, Segment Tree, Heap (Priority Queue) | Solution · LeetCode ↗ | |
| 2913 | Subarrays Distinct Element Sum of Squares I | Easy | 12 | Array, Hash Table, Segment Tree | LeetCode ↗ | |
| 327 | Count of Range Sum | Hard | 12 | Array, Binary Search, Divide and Conquer, Binary Indexed Tree, Segment Tree, Merge Sort, Ordered Set, Treap | Solution · LeetCode ↗ | |
| 2407 | Longest Increasing Subsequence II | Hard | 12 | Array, Divide and Conquer, Dynamic Programming, Binary Indexed Tree, Segment Tree, Queue, Monotonic Queue | Solution · LeetCode ↗ | |
| 3479 | Fruits Into Baskets III | Medium | 12 | Array, Binary Search, Segment Tree, Ordered Set | Solution · LeetCode ↗ |
Database and JavaScript problems from the list. They aren't Python algorithm problems, so they link straight to LeetCode.
| Done | # | Problem | Level | Frequency | Topics | Links |
|---|---|---|---|---|---|---|
| 176 | Second Highest Salary | Medium | 39 | Database | LeetCode ↗ | |
| 570 | Managers with at Least 5 Direct Reports | Medium | 22 | Database | LeetCode ↗ | |
| 1164 | Product Price at a Given Date | Medium | 22 | Database | LeetCode ↗ | |
| 1193 | Monthly Transactions I | Medium | 22 | Database | LeetCode ↗ | |
| 178 | Rank Scores | Medium | 17 | Database | LeetCode ↗ | |
| 1070 | Product Sales Analysis III | Medium | 17 | Database | LeetCode ↗ | |
| 177 | Nth Highest Salary | Medium | 12 | Database | LeetCode ↗ | |
| 550 | Game Play Analysis IV | Medium | 12 | Database | LeetCode ↗ | |
| 2633 | Convert Object to JSON String Premium | Medium | 12 | LeetCode ↗ | ||
| 194 | Transpose File | Medium | 12 | Shell | LeetCode ↗ | |
| 1321 | Restaurant Growth | Medium | 12 | Database | LeetCode ↗ | |
| 180 | Consecutive Numbers | Medium | 12 | Database | LeetCode ↗ | |
| 1341 | Movie Rating | Medium | 12 | Database | LeetCode ↗ | |
| 1907 | Count Salary Categories | Medium | 12 | Database | LeetCode ↗ | |
| 626 | Exchange Seats | Medium | 12 | Database | LeetCode ↗ | |
| 2618 | Check if Object Instance of Class | Medium | 12 | LeetCode ↗ |