Meta — DSA Questions
446 problems confirmed in interviews | 1483 total tagged
Problem titles link to LeetCode. Interview mention counts are derived from our analysis of public discussion posts.
Priority List (confirmed in interviews)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | House Robber | Medium | DP | 12x | LC | ||
| 2 | Longest Substring Without Repeating Characters | Medium | Tree | 10x | LC | ||
| 3 | Number of Islands | Medium | Graph | 9x | LC | ||
| 4 | Two Sum | Easy | Array / Two Pointers | 8x | LC | ||
| 5 | Search in Rotated Sorted Array | Medium | Binary Search | 8x | LC | ||
| 6 | Maximum Subarray | Medium | Array / Two Pointers | 8x | LC | ||
| 7 | Course Schedule | Medium | Graph | 8x | LC | ||
| 8 | Subarray Sum Equals K | Medium | Array / Two Pointers | 8x | LC | ||
| 9 | Container With Most Water | Medium | Array / Two Pointers | 7x | LC | ||
| 10 | Merge Intervals | Medium | Array, Sorting | 7x | LC | ||
| 11 | Unique Paths | Medium | DP | 7x | LC | ||
| 12 | Largest Rectangle in Histogram | Hard | Stack / Queue | 7x | LC | ||
| 13 | Best Time to Buy and Sell Stock | Easy | Other | 7x | LC | ||
| 14 | Find Minimum in Rotated Sorted Array | Medium | Other | 7x | LC | ||
| 15 | Sliding Window Maximum | Hard | Array, Queue, Sliding Window | 7x | LC | ||
| 16 | Target Sum | Medium | Other | 7x | LC | ||
| 17 | 3Sum | Medium | Array, Two Pointers, Sorting | 6x | LC | ||
| 18 | Valid Parentheses | Easy | Stack / Queue | 6x | LC | ||
| 19 | Permutations | Medium | Backtracking | 6x | LC | ||
| 20 | Group Anagrams | Medium | Array, Hash Table, String | 6x | LC | ||
| 21 | Climbing Stairs | Easy | DP | 6x | LC | ||
| 22 | Sort Colors | Medium | Array, Two Pointers, Sorting | 6x | LC | ||
| 23 | Minimum Window Substring | Hard | Tree | 6x | LC | ||
| 24 | Binary Tree Level Order Traversal | Medium | Tree | 6x | LC | ||
| 25 | Word Ladder | Hard | Other | 6x | LC | ||
| 26 | Word Break | Medium | DP | 6x | LC | ||
| 27 | Course Schedule II | Medium | Graph | 6x | LC | ||
| 28 | Product of Array Except Self | Medium | Array / Two Pointers | 6x | LC | ||
| 29 | Longest Increasing Subsequence | Medium | DP | 6x | LC | ||
| 30 | Coin Change | Medium | DP | 6x | LC | ||
| 31 | Decode String | Medium | String | 6x | LC | ||
| 32 | Longest Palindromic Substring | Medium | Tree | 5x | LC | ||
| 33 | Jump Game II | Medium | DP | 5x | LC | ||
| 34 | Jump Game | Medium | DP | 5x | LC | ||
| 35 | Validate Binary Search Tree | Medium | Tree, Depth-First Search, Binary Search Tree | 5x | LC | ||
| 36 | Valid Palindrome | Easy | String | 5x | LC | ||
| 37 | Maximum Product Subarray | Medium | Array, Dynamic Programming | 5x | LC | ||
| 38 | Majority Element | Easy | Array, Hash Table, Divide and Conquer | 5x | LC | ||
| 39 | Minimum Size Subarray Sum | Medium | Array / Two Pointers | 5x | LC | ||
| 40 | House Robber II | Medium | DP | 5x | LC | ||
| 41 | Meeting Rooms II | Medium | Intervals | 5x | LC | ||
| 42 | Top K Frequent Elements | Medium | Heap / PQ | 5x | LC | ||
| 43 | Binary Search | Easy | Array, Binary Search | 5x | LC | ||
| 44 | Rotting Oranges | Medium | Graph | 5x | LC | ||
| 45 | Capacity To Ship Packages Within D Days | Medium | Other | 5x | LC | ||
| 46 | Median of Two Sorted Arrays | Hard | Other | 4x | LC | ||
| 47 | Merge k Sorted Lists | Hard | Heap / PQ | 4x | LC | ||
| 48 | Combination Sum | Medium | Backtracking | 4x | LC | ||
| 49 | Trapping Rain Water | Hard | Array / Two Pointers | 4x | LC | ||
| 50 | Decode Ways | Medium | DP | 4x | LC | ||
| 51 | Maximum Depth of Binary Tree | Easy | Tree | 4x | LC | ||
| 52 | Binary Tree Maximum Path Sum | Hard | Tree | 4x | LC | ||
| 53 | Longest Consecutive Sequence | Medium | Array, Hash Table, Union-Find | 4x | LC | ||
| 54 | LRU Cache | Medium | HashMap / Design | 4x | LC | ||
| 55 | Contains Duplicate | Easy | Other | 4x | LC | ||
| 56 | Valid Anagram | Easy | String | 4x | LC | ||
| 57 | Missing Number | Easy | Other | 4x | LC | ||
| 58 | Move Zeroes | Easy | Other | 4x | LC | ||
| 59 | Find Median from Data Stream | Hard | Heap / PQ | 4x | LC | ||
| 60 | Pacific Atlantic Water Flow | Medium | Other | 4x | LC | ||
| 61 | Longest Repeating Character Replacement | Medium | Sliding Window | 4x | LC | ||
| 62 | Contiguous Array | Medium | Other | 4x | LC | ||
| 63 | Diameter of Binary Tree | Easy | Tree | 4x | LC | ||
| 64 | Max Consecutive Ones III | Medium | Other | 4x | LC | ||
| 65 | Longest Common Subsequence | Medium | Other | 4x | LC | ||
| 66 | Longest Continuous Subarray With Absolute Diff Less Tha | Medium | Array / Two Pointers | 4x | LC | ||
| 67 | Add Two Numbers | Medium | Linked List | 3x | LC | ||
| 68 | Regular Expression Matching | Hard | String, Dynamic Programming, Recursion | 3x | LC | ||
| 69 | Longest Common Prefix | Easy | Other | 3x | LC | ||
| 70 | Letter Combinations of a Phone Number | Medium | Hash Table, String, Backtracking | 3x | LC | ||
| 71 | Remove Nth Node From End of List | Medium | Linked List, Two Pointers | 3x | LC | ||
| 72 | Generate Parentheses | Medium | String, Dynamic Programming, Backtracking | 3x | LC | ||
| 73 | Search Insert Position | Easy | Other | 3x | LC | ||
| 74 | N-Queens | Hard | Array, Backtracking | 3x | LC | ||
| 75 | Simplify Path | Medium | Other | 3x | LC | ||
| 76 | Subsets | Medium | Array, Backtracking, Bit Manipulation | 3x | LC | ||
| 77 | Word Search | Medium | Backtracking | 3x | LC | ||
| 78 | Same Tree | Easy | Tree | 3x | LC | ||
| 79 | Clone Graph | Medium | Graph | 3x | LC | ||
| 80 | Single Number | Easy | Other | 3x | LC |
Graph (43 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Number of Islands | Medium | 9x | LC | |||
| 2 | Course Schedule | Medium | 8x | LC | |||
| 3 | Course Schedule II | Medium | 6x | LC | |||
| 4 | Rotting Oranges | Medium | 5x | LC | |||
| 5 | Clone Graph | Medium | 3x | LC | |||
| 6 | Alien Dictionary | Hard | 3x | LC | |||
| 7 | Number of Connected Components in an Undirected Graph | Medium | 3x | LC | |||
| 8 | Graph Valid Tree | Medium | Depth-First Search, Breadth-First Search, Union-Find | 2x | LC | ||
| 9 | Is Graph Bipartite? | Medium | Depth-First Search, Breadth-First Search, Union-Find | 2x | LC | ||
| 10 | Reconstruct Itinerary | Hard | Array, String, Depth-First Search | 1x | LC | ||
| 11 | Evaluate Division | Medium | 1x | LC | |||
| 12 | Bus Routes | Hard | 1x | LC | |||
| 13 | Making A Large Island | Hard | 1x | LC | |||
| 14 | Number of Islands II | Hard | 1x | LC | |||
| 15 | Network Delay Time | Medium | Depth-First Search, Breadth-First Search, Graph Theory | 1x | LC | ||
| 16 | Shortest Cycle in a Graph | Hard | Breadth-First Search, Graph Theory | 1x | LC | ||
| 17 | Course Schedule Iii | ? | 1x | LC | |||
| 18 | Minimum Number Of Days To Disconnect Island | ? | 1x | LC | |||
| 19 | Island Perimeter | Easy | LC | ||||
| 20 | Number of Distinct Islands | Medium | LC | ||||
| 21 | Max Area of Island | Medium | LC | ||||
| 22 | Number of Distinct Islands II | Hard | LC | ||||
| 23 | Cheapest Flights Within K Stops | Medium | LC | ||||
| 24 | Verifying an Alien Dictionary | Easy | LC | ||||
| 25 | Number of Closed Islands | Medium | LC | ||||
| 26 | Construct the Lexicographically Largest Valid Sequence | Medium | LC | ||||
| 27 | Find if Path Exists in Graph | Easy | Depth-First Search, Breadth-First Search, Union-Find | LC | |||
| 28 | Lexicographical Numbers | Medium | LC | ||||
| 29 | K-th Smallest in Lexicographical Order | Hard | LC | ||||
| 30 | Remove Max Number of Edges to Keep Graph Fully Traversa | Hard | LC | ||||
| 31 | Number of Operations to Make Network Connected | Medium | LC | ||||
| 32 | All Ancestors of a Node in a Directed Acyclic Graph | Medium | LC | ||||
| 33 | Course Schedule IV | Medium | LC | ||||
| 34 | The k-th Lexicographical String of All Happy Strings of | Medium | String, Backtracking | LC | |||
| 35 | Minimum Cost Walk in Weighted Graph | Hard | LC | ||||
| 36 | Largest Color Value in a Directed Graph | Hard | LC | ||||
| 37 | Find Center of Star Graph | Easy | LC | ||||
| 38 | Find the Lexicographically Largest String From the Box | Medium | Two Pointers, String, Enumeration | LC | |||
| 39 | Lexicographically Smallest Equivalent String | Medium | LC | ||||
| 40 | Using a Robot to Print the Lexicographically Smallest S | Medium | LC | ||||
| 41 | Lexicographically Minimum String After Removing Stars | Medium | Hash Table, String, Stack | LC | |||
| 42 | Reorder Routes to Make All Paths Lead to the City Zero | Medium | LC | ||||
| 43 | Count Sub Islands | Medium | Array, Depth-First Search, Breadth-First Search | LC |
DP (36 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | House Robber | Medium | 12x | LC | |||
| 2 | Unique Paths | Medium | 7x | LC | |||
| 3 | Climbing Stairs | Easy | 6x | LC | |||
| 4 | Word Break | Medium | 6x | LC | |||
| 5 | Longest Increasing Subsequence | Medium | 6x | LC | |||
| 6 | Coin Change | Medium | 6x | LC | |||
| 7 | Jump Game II | Medium | 5x | LC | |||
| 8 | Jump Game | Medium | 5x | LC | |||
| 9 | House Robber II | Medium | 5x | LC | |||
| 10 | Decode Ways | Medium | 4x | LC | |||
| 11 | Regular Expression Matching | Hard | String, Dynamic Programming, Recursion | 3x | LC | ||
| 12 | Unique Paths II | Medium | 2x | LC | |||
| 13 | Minimum Path Sum | Medium | 2x | LC | |||
| 14 | Maximum Profit in Job Scheduling | Hard | 2x | LC | |||
| 15 | Wildcard Matching | Hard | 1x | LC | |||
| 16 | Edit Distance | Medium | 1x | LC | |||
| 17 | Word Break II | Hard | Array, Hash Table, String | 1x | LC | ||
| 18 | House Robber III | Medium | Dynamic Programming, Tree, Depth-First Search | 1x | LC | ||
| 19 | Min Cost Climbing Stairs | Easy | 1x | LC | |||
| 20 | Jump Game Vii | ? | 1x | LC | |||
| 21 | House Robber V | Medium | Array, Dynamic Programming | 1x | LC | ||
| 22 | Coin Change 2 | ? | 1x | LC | |||
| 23 | One Edit Distance | Medium | LC | ||||
| 24 | Dungeon Game | Hard | LC | ||||
| 25 | Longest Increasing Path in a Matrix | Hard | LC | ||||
| 26 | Decode Ways II | Hard | LC | ||||
| 27 | Number of Longest Increasing Subsequence | Medium | LC | ||||
| 28 | Minimum Path Cost in a Hidden Grid | Medium | LC | ||||
| 29 | Unique Paths III | Hard | LC | ||||
| 30 | House Robber IV | Medium | LC | ||||
| 31 | Coin Change II | Medium | LC | ||||
| 32 | Cherry Pickup | Hard | LC | ||||
| 33 | Jump Game IV | Hard | LC | ||||
| 34 | Cherry Pickup II | Hard | LC | ||||
| 35 | Jump Game VI | Medium | LC | ||||
| 36 | Maximum Profit from Trading Stocks with Discounts | Hard | LC |
Tree (142 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Longest Substring Without Repeating Characters | Medium | 10x | LC | |||
| 2 | Minimum Window Substring | Hard | 6x | LC | |||
| 3 | Binary Tree Level Order Traversal | Medium | 6x | LC | |||
| 4 | Longest Palindromic Substring | Medium | 5x | LC | |||
| 5 | Validate Binary Search Tree | Medium | Tree, Depth-First Search, Binary Search Tree | 5x | LC | ||
| 6 | Maximum Depth of Binary Tree | Easy | 4x | LC | |||
| 7 | Binary Tree Maximum Path Sum | Hard | 4x | LC | |||
| 8 | Diameter of Binary Tree | Easy | 4x | LC | |||
| 9 | Same Tree | Easy | 3x | LC | |||
| 10 | Invert Binary Tree | Easy | Tree, Depth-First Search, Breadth-First Search | 3x | LC | ||
| 11 | Kth Smallest Element in a BST | Medium | 3x | LC | |||
| 12 | Lowest Common Ancestor of a Binary Search Tree | Medium | 3x | LC | |||
| 13 | Serialize and Deserialize Binary Tree | Hard | String, Tree, Depth-First Search | 3x | LC | ||
| 14 | Palindromic Substrings | Medium | 3x | LC | |||
| 15 | Construct Binary Tree from Preorder and Inorder Travers | Medium | 2x | LC | |||
| 16 | Balanced Binary Tree | Easy | Tree, Depth-First Search, Binary Tree | 2x | LC | ||
| 17 | Lowest Common Ancestor of a Binary Tree | Medium | 2x | LC | |||
| 18 | Subtree of Another Tree | Easy | 2x | LC | |||
| 19 | All Nodes Distance K in Binary Tree | Medium | 2x | LC | |||
| 20 | Binary Tree Cameras | Hard | 2x | LC | |||
| 21 | Count Good Nodes in Binary Tree | Medium | 2x | LC | |||
| 22 | Count Complete Tree Nodes | Easy | 2x | LC | |||
| 23 | Equal Score Substrings | ? | 2x | LC | |||
| 24 | Find Leaves Of Binary Tree | ? | 2x | LC | |||
| 25 | Binary Tree Inorder Traversal | Easy | Stack, Tree, Depth-First Search | 1x | LC | ||
| 26 | Convert Sorted Array to Binary Search Tree | Easy | 1x | LC | |||
| 27 | Convert Sorted List to Binary Search Tree | Medium | 1x | LC | |||
| 28 | Binary Tree Right Side View | Medium | 1x | LC | |||
| 29 | Implement Trie (Prefix Tree) | Medium | 1x | LC | |||
| 30 | Minimum Height Trees | Medium | 1x | LC | |||
| 31 | Delete Node in a BST | Medium | Tree, Binary Search Tree, Binary Tree | 1x | LC | ||
| 32 | Find Mode in Binary Search Tree | Easy | 1x | LC | |||
| 33 | Minimum Absolute Difference in BST | Easy | 1x | LC | |||
| 34 | Boundary of Binary Tree | Medium | 1x | LC | |||
| 35 | Two Sum IV - Input is a BST | Easy | 1x | LC | |||
| 36 | Search in a Binary Search Tree | Easy | 1x | LC | |||
| 37 | Range Sum of BST | Easy | 1x | LC | |||
| 38 | Construct Binary Search Tree from Preorder Traversal | Medium | 1x | LC | |||
| 39 | Maximum Level Sum of a Binary Tree | Medium | 1x | LC | |||
| 40 | Shortest Path in a Grid with Obstacles Elimination | Hard | 1x | LC | |||
| 41 | All Elements in Two Binary Search Trees | Medium | 1x | LC | |||
| 42 | Maximum Sum BST in Binary Tree | Hard | 1x | LC | |||
| 43 | Lowest Common Ancestor of a Binary Tree II | Medium | 1x | LC | |||
| 44 | Count Nodes Equal to Average of Subtree | Medium | 1x | LC | |||
| 45 | Unique Binary Search Trees | Medium | 1x | LC | |||
| 46 | Insert into a Binary Search Tree | Medium | Tree, Binary Search Tree, Binary Tree | 1x | LC | ||
| 47 | Construct Binary Tree from Preorder and Postorder Trave | Medium | Array, Hash Table, Divide and Conquer | 1x | LC | ||
| 48 | Construct String from Binary Tree | Medium | 1x | LC | |||
| 49 | Construct Binary Tree from Inorder and Postorder Traver | Medium | 1x | LC | |||
| 50 | Repeated Substring Pattern | Easy | 1x | LC |
...and 92 more in this category.
Array / Two Pointers (74 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Two Sum | Easy | 8x | LC | |||
| 2 | Maximum Subarray | Medium | 8x | LC | |||
| 3 | Subarray Sum Equals K | Medium | 8x | LC | |||
| 4 | Container With Most Water | Medium | 7x | LC | |||
| 5 | Product of Array Except Self | Medium | 6x | LC | |||
| 6 | Maximum Product Subarray | Medium | Array, Dynamic Programming | 5x | LC | ||
| 7 | Minimum Size Subarray Sum | Medium | 5x | LC | |||
| 8 | Trapping Rain Water | Hard | 4x | LC | |||
| 9 | Longest Continuous Subarray With Absolute Diff Less Tha | Medium | 4x | LC | |||
| 10 | Subarray Sums Divisible by K | Medium | 3x | LC | |||
| 11 | Subarrays with K Different Integers | Hard | 3x | LC | |||
| 12 | Merge Sorted Array | Easy | 2x | LC | |||
| 13 | Two Sum II - Input Array Is Sorted | Medium | 2x | LC | |||
| 14 | Count Number of Nice Subarrays | Medium | 2x | LC | |||
| 15 | Count of Interesting Subarrays | Medium | 2x | LC | |||
| 16 | Maximum Number Of Non Overlapping Subarrays With Sum Eq | ? | 2x | LC | |||
| 17 | Maximum Subarray Sum With One Deletion | ? | 2x | LC | |||
| 18 | Maximum Subarray Xor With Bounded Range | ? | 2x | LC | |||
| 19 | Remove Duplicates from Sorted Array | Easy | 1x | LC | |||
| 20 | Remove Duplicates from Sorted Array II | Medium | 1x | LC | |||
| 21 | Trapping Rain Water II | Hard | Array, Breadth-First Search, Heap (Priority Queue) | 1x | LC | ||
| 22 | Maximum Average Subarray I | Easy | 1x | LC | |||
| 23 | Subarray Product Less Than K | Medium | Array, Binary Search, Sliding Window | 1x | LC | ||
| 24 | Shortest Subarray with Sum at Least K | Hard | 1x | LC | |||
| 25 | Sum of Subarray Minimums | Medium | 1x | LC | |||
| 26 | Length of Longest Subarray With at Most K Frequency | Medium | Array, Hash Table, Sliding Window | 1x | LC | ||
| 27 | Shortest Unsorted Continuous Subarray | Medium | 1x | LC | |||
| 28 | Sum of Subarray Ranges | Medium | 1x | LC | |||
| 29 | Number of Zero-Filled Subarrays | Medium | 1x | LC | |||
| 30 | Bitwise ORs of Subarrays | Medium | 1x | LC | |||
| 31 | Minimum Number of Increments on Subarrays to Form a Tar | Hard | 1x | LC | |||
| 32 | Maximum Length of Repeated Subarray | Medium | Array, Binary Search, Dynamic Programming | 1x | LC | ||
| 33 | Number of Subarrays With GCD Equal to K | Medium | Array, Math, Number Theory | 1x | LC | ||
| 34 | Number Of Subarrays With Lcm Equal To K | ? | 1x | LC | |||
| 35 | Closest Subarray Bitwise And To Target | ? | 1x | LC | |||
| 36 | Count Good Subarrays | ? | 1x | LC | |||
| 37 | Maximum Subarray Min Product | ? | 1x | LC | |||
| 38 | Count Subarrays With Cost Less Than or Equal to K | Medium | Array, Queue, Monotonic Queue | 1x | LC | ||
| 39 | Find Maximum Balanced XOR Subarray Length | Medium | Array, Hash Table, Bit Manipulation | 1x | LC | ||
| 40 | Count The Number Of Beautiful Subarrays | ? | 1x | LC | |||
| 41 | Count Prime Gap Balanced Subarrays | ? | 1x | LC | |||
| 42 | Maximum Good Subarray Sum | ? | 1x | LC | |||
| 43 | Maximum Size Subarray Sum Equals k | Medium | LC | ||||
| 44 | Continuous Subarray Sum | Medium | LC | ||||
| 45 | Maximum Sum of 3 Non-Overlapping Subarrays | Hard | LC | ||||
| 46 | Maximum Sum Circular Subarray | Medium | LC | ||||
| 47 | Binary Subarrays With Sum | Medium | Array, Hash Table, Sliding Window | LC | |||
| 48 | Make Two Arrays Equal by Reversing Subarrays | Easy | LC | ||||
| 49 | Longest Subarray of 1's After Deleting One Element | Medium | LC | ||||
| 50 | K Radius Subarray Averages | Medium | Array, Sliding Window | LC |
...and 24 more in this category.
Sliding Window (4 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Sliding Window Maximum | Hard | Array, Queue, Sliding Window | 7x | LC | ||
| 2 | Longest Repeating Character Replacement | Medium | 4x | LC | |||
| 3 | Sliding Window Median | Hard | LC | ||||
| 4 | Minimum Window Subsequence | Hard | LC |
Intervals (12 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Merge Intervals | Medium | Array, Sorting | 7x | LC | ||
| 2 | Meeting Rooms II | Medium | 5x | LC | |||
| 3 | Meeting Rooms III | Hard | 2x | LC | |||
| 4 | Intervals Between Identical Elements | ? | 2x | LC | |||
| 5 | Insert Interval | Medium | 1x | LC | |||
| 6 | Non-overlapping Intervals | Medium | 1x | LC | |||
| 7 | Meeting Rooms | Easy | Array, Sorting | LC | |||
| 8 | Interval List Intersections | Medium | Array, Two Pointers, Sweep Line | LC | |||
| 9 | Remove Covered Intervals | Medium | LC | ||||
| 10 | Divide Intervals Into Minimum Number of Groups | Medium | LC | ||||
| 11 | My Calendar I | Medium | LC | ||||
| 12 | Count Odd Numbers in an Interval Range | Easy | LC |
Heap / PQ (9 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Top K Frequent Elements | Medium | 5x | LC | |||
| 2 | Merge k Sorted Lists | Hard | 4x | LC | |||
| 3 | Find Median from Data Stream | Hard | 4x | LC | |||
| 4 | Kth Largest Element in an Array | Medium | 2x | LC | |||
| 5 | Top K Frequent Words | Medium | 1x | LC | |||
| 6 | Reorganize String | Medium | 1x | LC | |||
| 7 | Task Scheduler | Medium | LC | ||||
| 8 | Kth Largest Element in a Stream | Easy | LC | ||||
| 9 | Task Scheduler II | Medium | LC |
Stack / Queue (26 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Largest Rectangle in Histogram | Hard | 7x | LC | |||
| 2 | Valid Parentheses | Easy | 6x | LC | |||
| 3 | Generate Parentheses | Medium | String, Dynamic Programming, Backtracking | 3x | LC | ||
| 4 | Asteroid Collision | Medium | 3x | LC | |||
| 5 | Daily Temperatures | Medium | Array, Stack, Monotonic Stack | 3x | LC | ||
| 6 | Min Stack | Medium | 2x | LC | |||
| 7 | Valid Parenthesis String | Medium | 2x | LC | |||
| 8 | Longest Valid Parentheses | Hard | String, Dynamic Programming, Stack | 1x | LC | ||
| 9 | Basic Calculator | Hard | 1x | LC | |||
| 10 | Implement Queue using Stacks | Easy | 1x | LC | |||
| 11 | Max Stack | Hard | 1x | LC | |||
| 12 | Maximum Frequency Stack | Hard | 1x | LC | |||
| 13 | Basic Calculator II | Medium | LC | ||||
| 14 | Different Ways to Add Parentheses | Medium | LC | ||||
| 15 | Remove Invalid Parentheses | Hard | String, Backtracking, Breadth-First Search | LC | |||
| 16 | Basic Calculator III | Hard | LC | ||||
| 17 | Minimum Add to Make Parentheses Valid | Medium | LC | ||||
| 18 | Remove Outermost Parentheses | Easy | LC | ||||
| 19 | Minimum Remove to Make Valid Parentheses | Medium | String, Stack | LC | |||
| 20 | Minimum Insertions to Balance a Parentheses String | Medium | LC | ||||
| 21 | Maximum Nesting Depth of the Parentheses | Easy | LC | ||||
| 22 | Score of Parentheses | Medium | LC | ||||
| 23 | Implement Stack using Queues | Easy | LC | ||||
| 24 | Check if a Parentheses String Can Be Valid | Medium | LC | ||||
| 25 | Validate Stack Sequences | Medium | LC | ||||
| 26 | Maximum Height by Stacking Cuboids | Hard | LC |
HashMap / Design (9 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Group Anagrams | Medium | Array, Hash Table, String | 6x | LC | ||
| 2 | LRU Cache | Medium | 4x | LC | |||
| 3 | First Unique Character in a String | Easy | 3x | LC | |||
| 4 | Design Hit Counter | Medium | 2x | LC | |||
| 5 | Insert Delete GetRandom O(1) | Medium | 1x | LC | |||
| 6 | First Unique Number | Medium | 1x | LC | |||
| 7 | Insert Delete GetRandom O(1) - Duplicates allowed | Hard | LC | ||||
| 8 | LFU Cache | Hard | LC | ||||
| 9 | Design HashMap | Easy | LC |
Binary Search (6 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Search in Rotated Sorted Array | Medium | 8x | LC | |||
| 2 | Binary Search | Easy | Array, Binary Search | 5x | LC | ||
| 3 | Find First and Last Position of Element in Sorted Array | Medium | LC | ||||
| 4 | Sqrt(x) | Easy | Math, Binary Search | LC | |||
| 5 | Search in Rotated Sorted Array II | Medium | Array, Binary Search | LC | |||
| 6 | Split Array Largest Sum | Hard | LC |
String (27 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Decode String | Medium | 6x | LC | |||
| 2 | Valid Palindrome | Easy | 5x | LC | |||
| 3 | Valid Anagram | Easy | 4x | LC | |||
| 4 | Find All Anagrams in a String | Medium | 3x | LC | |||
| 5 | Palindrome Partitioning | Medium | String, Dynamic Programming, Backtracking | 2x | LC | ||
| 6 | Palindrome Linked List | Easy | 2x | LC | |||
| 7 | Longest Palindromic Subsequence | Medium | String, Dynamic Programming | 2x | LC | ||
| 8 | Valid Palindrome II | Easy | Two Pointers, String, Greedy | 2x | LC | ||
| 9 | Find the Closest Palindrome | Hard | Math, String | 2x | LC | ||
| 10 | Palindrome Number | Easy | 1x | LC | |||
| 11 | Encode and Decode Strings | Medium | Array, String, Design | 1x | LC | ||
| 12 | Minimum Insertion Steps to Make a String Palindrome | Hard | 1x | LC | |||
| 13 | String to Integer (atoi) | Medium | LC | ||||
| 14 | Text Justification | Hard | Array, String, Simulation | LC | |||
| 15 | Palindrome Permutation | Easy | LC | ||||
| 16 | Palindrome Permutation II | Medium | LC | ||||
| 17 | Longest Palindrome | Easy | Hash Table, String, Greedy | LC | |||
| 18 | Valid Palindrome III | Hard | LC | ||||
| 19 | Unique Length-3 Palindromic Subsequences | Medium | LC | ||||
| 20 | Shortest Palindrome | Hard | LC | ||||
| 21 | Construct K Palindrome Strings | Medium | LC | ||||
| 22 | Palindrome Partitioning II | Hard | String, Dynamic Programming | LC | |||
| 23 | Longest Palindrome by Concatenating Two Letter Words | Medium | LC | ||||
| 24 | Prime Palindrome | Medium | LC | ||||
| 25 | Palindrome Pairs | Hard | LC | ||||
| 26 | Find Resultant Array After Removing Anagrams | Easy | LC | ||||
| 27 | Valid Palindrome IV | Medium | Two Pointers, String | LC |
Backtracking (29 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Permutations | Medium | 6x | LC | |||
| 2 | Combination Sum | Medium | 4x | LC | |||
| 3 | Letter Combinations of a Phone Number | Medium | Hash Table, String, Backtracking | 3x | LC | ||
| 4 | N-Queens | Hard | Array, Backtracking | 3x | LC | ||
| 5 | Subsets | Medium | Array, Backtracking, Bit Manipulation | 3x | LC | ||
| 6 | Word Search | Medium | 3x | LC | |||
| 7 | Partition Equal Subset Sum | Medium | 3x | LC | |||
| 8 | Permutation in String | Medium | 3x | LC | |||
| 9 | Next Permutation | Medium | Array, Two Pointers | 2x | LC | ||
| 10 | Sudoku Solver | Hard | 2x | LC | |||
| 11 | Combination Sum II | Medium | 2x | LC | |||
| 12 | Combination Sum IV | Medium | 2x | LC | |||
| 13 | Combinations | Medium | 1x | LC | |||
| 14 | Subsets II | Medium | 1x | LC | |||
| 15 | Word Search II | Hard | Array, String, Backtracking | 1x | LC | ||
| 16 | Partition to K Equal Sum Subsets | Medium | 1x | LC | |||
| 17 | Sum of All Subset XOR Totals | Easy | 1x | LC | |||
| 18 | Valid Sudoku | Medium | LC | ||||
| 19 | Permutations II | Medium | Array, Backtracking, Sorting | LC | |||
| 20 | Letter Case Permutation | Medium | LC | ||||
| 21 | Build Array from Permutation | Easy | Array, Simulation | LC | |||
| 22 | Permutation Sequence | Hard | LC | ||||
| 23 | N-Queens II | Hard | LC | ||||
| 24 | Word Subsets | Medium | LC | ||||
| 25 | Count Number of Maximum Bitwise-OR Subsets | Medium | LC | ||||
| 26 | Largest Divisible Subset | Medium | LC | ||||
| 27 | Count Number of Balanced Permutations | Hard | LC | ||||
| 28 | Partition Array into Two Equal Product Subsets | Medium | LC | ||||
| 29 | Count the Number of Computer Unlocking Permutations | Medium | LC |
Matrix / Grid (27 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Rotate Image | Medium | 2x | LC | |||
| 2 | Spiral Matrix | Medium | 2x | LC | |||
| 3 | Matrix Block Sum | ? | 2x | LC | |||
| 4 | Set Matrix Zeroes | Medium | 1x | LC | |||
| 5 | Search a 2D Matrix | Medium | 1x | LC | |||
| 6 | Kth Smallest Element in a Sorted Matrix | Medium | 1x | LC | |||
| 7 | Spiral Matrix II | Medium | LC | ||||
| 8 | Search a 2D Matrix II | Medium | Array, Binary Search, Divide and Conquer | LC | |||
| 9 | Game of Life | Medium | LC | ||||
| 10 | Sparse Matrix Multiplication | Medium | LC | ||||
| 11 | 01 Matrix | Medium | LC | ||||
| 12 | Toeplitz Matrix | Easy | LC | ||||
| 13 | Shortest Path in Binary Matrix | Medium | LC | ||||
| 14 | Count Negative Numbers in a Sorted Matrix | Easy | LC | ||||
| 15 | Find the Kth Smallest Sum of a Matrix With Sorted Rows | Hard | LC | ||||
| 16 | Largest Local Values in a Matrix | Easy | LC | ||||
| 17 | Spiral Matrix III | Medium | Array, Matrix, Simulation | LC | |||
| 18 | Reshape the Matrix | Easy | LC | ||||
| 19 | Determine Whether Matrix Can Be Obtained By Rotation | Easy | Array, Matrix | LC | |||
| 20 | Spiral Matrix IV | Medium | LC | ||||
| 21 | Transpose Matrix | Easy | Array, Matrix, Simulation | LC | |||
| 22 | Rank Transform of a Matrix | Hard | Array, Union-Find, Graph Theory | LC | |||
| 23 | Sort Matrix by Diagonals | Medium | LC | ||||
| 24 | Special Positions in a Binary Matrix | Easy | LC | ||||
| 25 | The K Weakest Rows in a Matrix | Easy | LC | ||||
| 26 | Maximum Matrix Sum | Medium | LC | ||||
| 27 | Matrix Similarity After Cyclic Shifts | Easy | LC |
Linked List (28 problems)
| # | Problem | Difficulty | Tags | Seen | LC | Editorial | Video |
|---|---|---|---|---|---|---|---|
| 1 | Add Two Numbers | Medium | 3x | LC | |||
| 2 | Linked List Cycle | Easy | Hash Table, Linked List, Two Pointers | 3x | LC | ||
| 3 | Linked List Cycle II | Medium | 3x | LC | |||
| 4 | Merge Two Sorted Lists | Easy | 2x | LC | |||
| 5 | Reverse Linked List | Easy | 2x | LC | |||
| 6 | Middle of the Linked List | Easy | 2x | LC | |||
| 7 | Intersection of Two Linked Lists | Easy | 1x | LC | |||
| 8 | Delete Node in a Linked List | Medium | 1x | LC | |||
| 9 | Odd Even Linked List | Medium | 1x | LC | |||
| 10 | Flatten a Multilevel Doubly Linked List | Medium | 1x | LC | |||
| 11 | Merge In Between Linked Lists | Medium | 1x | LC | |||
| 12 | Split Linked List in Parts | Medium | 1x | LC | |||
| 13 | Swap Nodes in Pairs | Medium | LC | ||||
| 14 | Reverse Linked List II | Medium | LC | ||||
| 15 | Remove Linked List Elements | Easy | LC | ||||
| 16 | Add Two Numbers II | Medium | LC | ||||
| 17 | Swapping Nodes in a Linked List | Medium | Linked List, Two Pointers | LC | |||
| 18 | Insert into a Sorted Circular Linked List | Medium | LC | ||||
| 19 | Remove Zero Sum Consecutive Nodes from Linked List | Medium | LC | ||||
| 20 | Convert Binary Number in a Linked List to Integer | Easy | LC | ||||
| 21 | Remove Nodes From Linked List | Medium | LC | ||||
| 22 | Insert Greatest Common Divisors in Linked List | Medium | Linked List, Math, Number Theory | LC | |||
| 23 | Delete the Middle Node of a Linked List | Medium | LC | ||||
| 24 | Linked List Random Node | Medium | LC | ||||
| 25 | Maximum Twin Sum of a Linked List | Medium | LC | ||||
| 26 | Delete Nodes From Linked List Present in Array | Medium | Array, Hash Table, Linked List | LC | |||
| 27 | Design Linked List | Medium | LC | ||||
| 28 | Linked List Components | Medium | LC |