| # | Problem | Difficulty | Topics |
|---|---|---|---|
| 1 | 01 Matrix | Medium | Array, Dynamic Programming, Breadth-First Search, Matrix |
| 2 | 132 Pattern | Medium | Array, Binary Search, Stack, Monotonic Stack, Ordered Set |
| 3 | 3Sum | Medium | Array, Two Pointers, Sorting |
| 4 | 3Sum Closest | Medium | Array, Two Pointers, Sorting |
| 5 | 3Sum With Multiplicity | Medium | Array, Hash Table, Two Pointers, Sorting, Counting |
| 6 | 4Sum | Medium | Array, Two Pointers, Sorting |
| 7 | 4Sum II | Medium | Array, Hash Table |
| 8 | Add Strings | Easy | Math, String, Simulation |
| 9 | Add Two Numbers | Medium | Linked List, Math, Recursion |
| 10 | Add Two Numbers II | Medium | Linked List, Math, Stack |
| 11 | All Divisions With the Highest Score of a Binary Array | Medium | Array |
| 12 | All Elements in Two Binary Search Trees | Medium | Tree, Depth-First Search, Binary Search Tree, Sorting, Binary Tree |
| 13 | All Nodes Distance K in Binary Tree | Medium | Hash Table, Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 14 | Ambiguous Coordinates | Medium | String, Backtracking, Enumeration |
| 15 | Amount of Time for Binary Tree to Be Infected | Medium | Hash Table, Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 16 | Angle Between Hands of a Clock | Medium | Math |
| 17 | Arithmetic Slices | Medium | Array, Dynamic Programming, Sliding Window |
| 18 | Arithmetic Subarrays | Medium | Array, Hash Table, Sorting |
| 19 | Arranging Coins | Easy | Math, Binary Search |
| 20 | Array Nesting | Medium | Array, Depth-First Search |
| 21 | Array of Doubled Pairs | Medium | Array, Hash Table, Greedy, Sorting |
| 22 | Array Partition | Easy | Array, Greedy, Sorting, Counting Sort |
| 23 | Backspace String Compare | Easy | Two Pointers, String, Stack, Simulation |
| 24 | Basic Calculator | Hard | Math, String, Stack, Recursion |
| 25 | Best Time to Buy and Sell Stock | Easy | Array, Dynamic Programming |
| 26 | Best Time to Buy and Sell Stock II | Medium | Array, Dynamic Programming, Greedy |
| 27 | Best Time to Buy and Sell Stock III | Hard | Array, Dynamic Programming |
| 28 | Best Time to Buy and Sell Stock IV | Hard | Array, Dynamic Programming |
| 29 | Best Time to Buy and Sell Stock with Cooldown | Medium | Array, Dynamic Programming |
| 30 | Best Time to Buy and Sell Stock with Transaction Fee | Medium | Array, Dynamic Programming, Greedy |
| 31 | Binary Gap | Easy | Bit Manipulation |
| 32 | Binary Search | Easy | Array, Binary Search |
| 33 | Binary Search Tree Iterator | Medium | Stack, Tree, Design, Binary Search Tree, Binary Tree, Iterator |
| 34 | Binary Tree Cameras | Hard | Dynamic Programming, Tree, Depth-First Search, Binary Tree, DP on Trees |
| 35 | Binary Tree Inorder Traversal | Easy | Stack, Tree, Depth-First Search, Binary Tree |
| 36 | Binary Tree Level Order Traversal | Medium | Tree, Breadth-First Search, Binary Tree |
| 37 | Binary Tree Maximum Path Sum | Hard | Dynamic Programming, Tree, Depth-First Search, Binary Tree, DP on Trees |
| 38 | Binary Tree Postorder Traversal | Easy | Stack, Tree, Depth-First Search, Binary Tree |
| 39 | Binary Tree Preorder Traversal | Easy | Stack, Tree, Depth-First Search, Binary Tree |
| 40 | Binary Tree Right Side View | Medium | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 41 | Binary Tree Tilt | Easy | Tree, Depth-First Search, Binary Tree, DP on Trees |
| 42 | Binary Trees With Factors | Medium | Array, Hash Table, Dynamic Programming, Sorting |
| 43 | Break a Palindrome | Medium | String, Greedy |
| 44 | Broken Calculator | Medium | Math, Greedy |
| 45 | Build an Array With Stack Operations | Medium | Array, Stack, Simulation |
| 46 | Bus Routes | Hard | Array, Hash Table, Breadth-First Search |
| 47 | Candy | Hard | Array, Greedy |
| 48 | Capacity To Ship Packages Within D Days | Medium | Array, Binary Search |
| 49 | Car Pooling | Medium | Array, Sorting, Heap (Priority Queue), Simulation, Prefix Sum |
| 50 | Check if Move is Legal | Medium | Array, Matrix, Enumeration |
| 51 | Check If N and Its Double Exist | Easy | Array, Hash Table, Two Pointers, Binary Search, Sorting |
| 52 | Check if There Is a Valid Parentheses String Path | Hard | Array, Dynamic Programming, Matrix, Bracket Sequences |
| 53 | Climbing Stairs | Easy | Math, Dynamic Programming, Memoization |
| 54 | Clone Graph | Medium | Hash Table, Depth-First Search, Breadth-First Search, Graph Theory |
| 55 | Closest Subsequence Sum | Hard | Array, Two Pointers, Dynamic Programming, Bit Manipulation, Meet in the Middle, Sorting, Bitmask |
| 56 | Coin Change | Medium | Array, Dynamic Programming, Breadth-First Search, Knapsack Problem, Complete Knapsack |
| 57 | Coin Change II | Medium | Array, Dynamic Programming, Knapsack Problem, Complete Knapsack |
| 58 | Combination Sum | Medium | Array, Backtracking |
| 59 | Combination Sum II | Medium | Array, Backtracking |
| 60 | Combination Sum III | Medium | Array, Backtracking |
| 61 | Combination Sum IV | Medium | Array, Dynamic Programming |
| 62 | Compare Version Numbers | Medium | Two Pointers, String |
| 63 | Complex Number Multiplication | Medium | Math, String, Simulation |
| 64 | Construct Binary Search Tree from Preorder Traversal | Medium | Array, Stack, Tree, Binary Search Tree, Monotonic Stack, Binary Tree |
| 65 | Construct Binary Tree from Preorder and Inorder Traversal | Medium | Array, Hash Table, Divide and Conquer, Tree, Binary Tree |
| 66 | Construct Target Array With Multiple Sums | Hard | Array, Heap (Priority Queue) |
| 67 | Container With Most Water | Medium | Array, Two Pointers, Greedy |
| 68 | Contains Duplicate III | Hard | Array, Sliding Window, Sorting, Bucket Sort, Ordered Set |
| 69 | Contiguous Array | Medium | Array, Hash Table, Prefix Sum |
| 70 | Continuous Subarray Sum | Medium | Array, Hash Table, Math, Prefix Sum, Pigeonhole Principle |
| 71 | Convert Sorted Array to Binary Search Tree | Easy | Array, Divide and Conquer, Tree, Binary Search Tree, Binary Tree |
| 72 | Convert Sorted List to Binary Search Tree | Medium | Linked List, Divide and Conquer, Tree, Binary Search Tree, Binary Tree |
| 73 | Copy List with Random Pointer | Medium | Hash Table, Linked List |
| 74 | Count Good Nodes in Binary Tree | Medium | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 75 | Count Negative Numbers in a Sorted Matrix | Easy | Array, Binary Search, Matrix |
| 76 | Count Nice Pairs in an Array | Medium | Array, Hash Table, Math, Counting |
| 77 | Count Nodes Equal to Average of Subtree | Medium | Tree, Depth-First Search, Binary Tree |
| 78 | Count Number of Homogenous Substrings | Medium | Math, String |
| 79 | Count Number of Rectangles Containing Each Point | Medium | Array, Hash Table, Binary Search, Binary Indexed Tree, Sorting |
| 80 | Count Number of Texts | Medium | Hash Table, Math, String, Dynamic Programming |
| 81 | Count of Smaller Numbers After Self | Hard | Array, Binary Search, Divide and Conquer, Binary Indexed Tree, Segment Tree, Merge Sort, Ordered Set, Treap |
| 82 | Count Primes | Medium | Array, Math, Enumeration, Number Theory, Primality Test, Sieve Theory, Prime Number Sieve |
| 83 | Count Sorted Vowel Strings | Medium | Math, Dynamic Programming, Combinatorics |
| 84 | Count Vowels Permutation | Hard | Dynamic Programming |
| 85 | Course Schedule | Medium | Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Directed Acyclic Graph |
| 86 | Course Schedule II | Medium | Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort |
| 87 | Course Schedule III | Hard | Array, Greedy, Sorting, Heap (Priority Queue) |
| 88 | Cousins in Binary Tree | Easy | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 89 | Critical Connections in a Network | Hard | Depth-First Search, Graph Theory, Biconnected Component, Bridge (Graph) |
| 90 | Custom Sort String | Medium | Hash Table, String, Sorting |
| 91 | Daily Temperatures | Medium | Array, Stack, Monotonic Stack |
| 92 | Decode String | Medium | String, Stack, Recursion |
| 93 | Decode Ways | Medium | String, Dynamic Programming |
| 94 | Decode Ways II | Hard | String, Dynamic Programming |
| 95 | Decode XORed Array | Easy | Array, Bit Manipulation |
| 96 | Deepest Leaves Sum | Medium | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 97 | Delete and Earn | Medium | Array, Hash Table, Dynamic Programming |
| 98 | Delete Node in a BST | Medium | Tree, Binary Search Tree, Binary Tree |
| 99 | Delete Operation for Two Strings | Medium | String, Dynamic Programming, Longest Common Subsequence |
| 100 | Design a Food Rating System | Medium | Array, Hash Table, String, Design, Heap (Priority Queue), Ordered Set |
| 101 | Design Add and Search Words Data Structure | Medium | String, Depth-First Search, Design, Trie |
| 102 | Design an Ordered Stream | Easy | Array, Hash Table, Design, Data Stream |
| 103 | Design Circular Queue | Medium | Array, Linked List, Design, Queue |
| 104 | Design Graph With Shortest Path Calculator | Hard | Graph Theory, Design, Heap (Priority Queue), Shortest Path |
| 105 | Design HashSet | Easy | Array, Hash Table, Linked List, Design, Hash Function |
| 106 | Design In-Memory File System | Hard | Hash Table, String, Design, Trie, Sorting |
| 107 | Design Linked List | Medium | Linked List, Design |
| 108 | Design Twitter | Medium | Hash Table, Linked List, Design, Heap (Priority Queue) |
| 109 | Determine if Two Strings Are Close | Medium | Hash Table, String, Sorting, Counting |
| 110 | Determine Whether Matrix Can Be Obtained By Rotation | Easy | Array, Matrix |
| 111 | Diagonal Traverse | Medium | Array, Matrix, Simulation |
| 112 | Diagonal Traverse II | Medium | Array, Sorting, Heap (Priority Queue) |
| 113 | Diameter of Binary Tree | Easy | Tree, Depth-First Search, Binary Tree, DP on Trees |
| 114 | Different Ways to Add Parentheses | Medium | Math, String, Dynamic Programming, Recursion, Memoization, Bracket Sequences |
| 115 | Divide Two Integers | Medium | Math, Bit Manipulation |
| 116 | Dungeon Game | Hard | Array, Dynamic Programming, Matrix |
| 117 | Duplicate Zeros | Easy | Array, Two Pointers |
| 118 | Edit Distance | Medium | String, Dynamic Programming |
| 119 | Eliminate Maximum Number of Monsters | Medium | Array, Greedy, Sorting |
| 120 | Evaluate Division | Medium | Array, String, Depth-First Search, Breadth-First Search, Union-Find, Graph Theory, Shortest Path, Bellman–Ford Algorithm, Floyd–Warshall Algorithm |
| 121 | Evaluate Reverse Polish Notation | Medium | Array, Math, Stack |
| 122 | Expression Add Operators | Hard | Math, String, Backtracking |
| 123 | Filling Bookcase Shelves | Medium | Array, Dynamic Programming |
| 124 | Find a Corresponding Node of a Binary Tree in a Clone of That Tree | Easy | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 125 | Find All Anagrams in a String | Medium | Hash Table, String, Sliding Window |
| 126 | Find All Duplicates in an Array | Medium | Array, Hash Table, Sorting |
| 127 | Find All Numbers Disappeared in an Array | Easy | Array, Hash Table |
| 128 | Find All People With Secret | Hard | Depth-First Search, Breadth-First Search, Union-Find, Graph Theory, Sorting |
| 129 | Find and Replace Pattern | Medium | Array, Hash Table, String |
| 130 | Find Duplicate File in System | Medium | Array, Hash Table, String |
| 131 | Find Eventual Safe States | Medium | Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Kosaraju's Algorithm, Tarjan's SCC Algorithm |
| 132 | Find First and Last Position of Element in Sorted Array | Medium | Array, Binary Search |
| 133 | Find in Mountain Array | Hard | Array, Binary Search, Interactive, Ternary Search |
| 134 | Find K Closest Elements | Medium | Array, Two Pointers, Binary Search, Sliding Window, Sorting, Heap (Priority Queue) |
| 135 | Find Largest Value in Each Tree Row | Medium | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 136 | Find Median from Data Stream | Hard | Two Pointers, Design, Sorting, Heap (Priority Queue), Data Stream |
| 137 | Find Minimum in Rotated Sorted Array | Medium | Array, Binary Search |
| 138 | Find Missing Observations | Medium | Array, Math, Simulation |
| 139 | Find Mode in Binary Search Tree | Easy | Tree, Depth-First Search, Binary Search Tree, Binary Tree |
| 140 | Find Original Array From Doubled Array | Medium | Array, Hash Table, Greedy, Sorting |
| 141 | Find Peak Element | Medium | Array, Binary Search |
| 142 | Find Pivot Index | Easy | Array, Prefix Sum |
| 143 | Find Players With Zero or One Losses | Medium | Array, Hash Table, Sorting, Counting |
| 144 | Find Polygon With the Largest Perimeter | Medium | Array, Greedy, Sorting, Prefix Sum, Polygons |
| 145 | Find Smallest Letter Greater Than Target | Easy | Array, Binary Search |
| 146 | Find Substring With Given Hash Value | Hard | String, Sliding Window, Rolling Hash, Hash Function |
| 147 | Find the Celebrity | Medium | Two Pointers, Graph Theory, Interactive |
| 148 | Find The Original Array of Prefix Xor | Medium | Array, Bit Manipulation |
| 149 | Find the Shortest Superstring | Hard | Array, String, Dynamic Programming, Bit Manipulation, Bitmask, Hamiltonian Path |
| 150 | Find the Town Judge | Easy | Array, Hash Table, Graph Theory |
| 151 | Find the Winner of an Array Game | Medium | Array, Simulation |
| 152 | Find Unique Binary String | Medium | Array, Hash Table, String, Backtracking |
| 153 | Find Winner on a Tic Tac Toe Game | Easy | Array, Hash Table, Matrix, Simulation |
| 154 | First Bad Version | Easy | Binary Search, Interactive |
| 155 | First Missing Positive | Hard | Array, Hash Table |
| 156 | First Unique Character in a String | Easy | Hash Table, String, Queue, Counting |
| 157 | Flatten a Multilevel Doubly Linked List | Medium | Linked List, Depth-First Search, Doubly-Linked List |
| 158 | Flatten Binary Tree to Linked List | Medium | Linked List, Stack, Tree, Depth-First Search, Binary Tree |
| 159 | Flatten Nested List Iterator | Medium | Stack, Tree, Depth-First Search, Design, Queue, Iterator |
| 160 | Flood Fill | Easy | Array, Depth-First Search, Breadth-First Search, Matrix |
| 161 | Frequency of the Most Frequent Element | Medium | Array, Binary Search, Greedy, Sliding Window, Sorting, Prefix Sum |
| 162 | Frog Position After T Seconds | Hard | Tree, Depth-First Search, Breadth-First Search, Graph Theory |
| 163 | Fruit Into Baskets | Medium | Array, Hash Table, Sliding Window |
| 164 | Gas Station | Medium | Array, Greedy |
| 165 | Generate Parentheses | Medium | String, Dynamic Programming, Backtracking, Bracket Sequences |
| 166 | Graph Connectivity With Threshold | Hard | Array, Math, Union-Find, Number Theory |
| 167 | Gray Code | Medium | Math, Backtracking, Bit Manipulation |
| 168 | Group Anagrams | Medium | Array, Hash Table, String, Sorting |
| 169 | Guess Number Higher or Lower II | Medium | Math, Dynamic Programming, Minimax, Game Theory |
| 170 | Happy Number | Easy | Hash Table, Math, Two Pointers, Floyd's Cycle Finding Algorithm |
| 171 | House Robber | Medium | Array, Dynamic Programming |
| 172 | House Robber II | Medium | Array, Dynamic Programming |
| 173 | House Robber III | Medium | Dynamic Programming, Tree, Depth-First Search, Binary Tree, DP on Trees |
| 174 | Implement Queue using Stacks | Easy | Stack, Design, Queue |
| 175 | Implement Stack using Queues | Easy | Stack, Design, Queue |
| 176 | Implement Trie (Prefix Tree) | Medium | Hash Table, String, Design, Trie |
| 177 | Inorder Successor in BST | Medium | Tree, Depth-First Search, Binary Search Tree, Binary Tree |
| 178 | Insert Delete GetRandom O(1) | Medium | Array, Hash Table, Math, Design, Randomized |
| 179 | Insert Delete GetRandom O(1) - Duplicates allowed | Hard | Array, Hash Table, Math, Design, Randomized |
| 180 | Integer Break | Medium | Math, Dynamic Programming |
| 181 | Interleaving String | Medium | String, Dynamic Programming |
| 182 | Intersection of Two Arrays II | Easy | Array, Hash Table, Two Pointers, Binary Search, Sorting |
| 183 | Intersection of Two Linked Lists | Easy | Hash Table, Linked List, Two Pointers |
| 184 | Intervals Between Identical Elements | Medium | Array, Hash Table, Prefix Sum |
| 185 | Invert Binary Tree | Easy | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 186 | Is Graph Bipartite? | Medium | Depth-First Search, Breadth-First Search, Union-Find, Graph Theory, Graph Coloring, Bipartite Graph |
| 187 | Island Perimeter | Easy | Array, Depth-First Search, Breadth-First Search, Matrix |
| 188 | Isomorphic Strings | Easy | Hash Table, String |
| 189 | Jewels and Stones | Easy | Hash Table, String |
| 190 | Jump Game | Medium | Array, Dynamic Programming, Greedy |
| 191 | Jump Game II | Medium | Array, Dynamic Programming, Greedy |
| 192 | Jump Game III | Medium | Array, Depth-First Search, Breadth-First Search |
| 193 | K Closest Points to Origin | Medium | Array, Math, Divide and Conquer, Geometry, Sorting, Heap (Priority Queue), Quickselect, K-D Tree |
| 194 | K Inverse Pairs Array | Hard | Dynamic Programming |
| 195 | K-diff Pairs in an Array | Medium | Array, Hash Table, Two Pointers, Binary Search, Sorting |
| 196 | Keys and Rooms | Medium | Depth-First Search, Breadth-First Search, Graph Theory |
| 197 | Keys and Rooms | Medium | Depth-First Search, Breadth-First Search, Graph Theory |
| 198 | Knight Dialer | Medium | Dynamic Programming |
| 199 | Koko Eating Bananas | Medium | Array, Binary Search |
| 200 | Kth Missing Positive Number | Easy | Array, Binary Search |
| 201 | Kth Smallest Element in a BST | Medium | Tree, Depth-First Search, Binary Search Tree, Binary Tree |
| 202 | Kth Smallest Element in a Sorted Matrix | Medium | Array, Binary Search, Sorting, Heap (Priority Queue), Matrix |
| 203 | Largest Component Size by Common Factor | Hard | Array, Hash Table, Math, Union-Find, Number Theory, Prime Factorization |
| 204 | Largest Number | Medium | Array, String, Greedy, Sorting |
| 205 | Largest Number At Least Twice of Others | Easy | Array, Sorting |
| 206 | Largest Plus Sign | Medium | Array, Dynamic Programming |
| 207 | Largest Rectangle in Histogram | Hard | Array, Stack, Monotonic Stack, Range Minimum/Maximum Query |
| 208 | Largest Submatrix With Rearrangements | Medium | Array, Greedy, Sorting, Matrix |
| 209 | Largest Values From Labels | Medium | Array, Hash Table, Greedy, Sorting, Counting |
| 210 | Last Moment Before All Ants Fall Out of a Plank | Medium | Array, Brainteaser, Simulation |
| 211 | License Key Formatting | Easy | String |
| 212 | Linked List Cycle | Easy | Hash Table, Linked List, Two Pointers, Floyd's Cycle Finding Algorithm |
| 213 | Linked List Cycle II | Medium | Hash Table, Linked List, Two Pointers, Floyd's Cycle Finding Algorithm |
| 214 | Longest Common Prefix | Easy | Array, String, Trie |
| 215 | Longest Consecutive Sequence | Medium | Array, Hash Table, Union-Find |
| 216 | Longest Duplicate Substring | Hard | String, Binary Search, Sliding Window, Rolling Hash, Suffix Array, Hash Function, Suffix Automaton, Suffix Tree, Z Algorithm, Boyer–Moore String-Search Algorithm |
| 217 | Longest Increasing Path in a Matrix | Hard | Array, Dynamic Programming, Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Memoization, Matrix, Directed Acyclic Graph |
| 218 | Longest Increasing Subsequence | Medium | Array, Binary Search, Dynamic Programming, Longest Increasing Subsequence |
| 219 | Longest Palindromic Subsequence | Medium | String, Dynamic Programming |
| 220 | Longest Palindromic Substring | Medium | Two Pointers, String, Dynamic Programming, Manacher |
| 221 | Longest Repeating Character Replacement | Medium | Hash Table, String, Sliding Window |
| 222 | Longest String Chain | Medium | Array, Hash Table, Two Pointers, String, Dynamic Programming, Sorting |
| 223 | Longest Substring with At Least K Repeating Characters | Medium | Hash Table, String, Divide and Conquer, Sliding Window |
| 224 | Longest Substring Without Repeating Characters | Medium | Hash Table, String, Sliding Window |
| 225 | Longest Turbulent Subarray | Medium | Array, Dynamic Programming, Sliding Window |
| 226 | Longest Uncommon Subsequence II | Medium | Array, Hash Table, Two Pointers, String, Sorting |
| 227 | Longest Valid Parentheses | Hard | String, Dynamic Programming, Stack, Bracket Sequences |
| 228 | Lowest Common Ancestor of a Binary Search Tree | Medium | Tree, Depth-First Search, Binary Search Tree, Binary Tree, Binary Lifting, Lowest Common Ancestor |
| 229 | Lowest Common Ancestor of a Binary Tree | Medium | Tree, Depth-First Search, Binary Tree, Binary Lifting, Lowest Common Ancestor |
| 230 | LRU Cache | Medium | Hash Table, Linked List, Design, Doubly-Linked List |
| 231 | Majority Element | Easy | Array, Hash Table, Divide and Conquer, Sorting, Counting, Boyer–Moore Majority Vote Algorithm |
| 232 | Majority Element II | Medium | Array, Hash Table, Sorting, Counting, Boyer–Moore Majority Vote Algorithm |
| 233 | Making File Names Unique | Medium | Array, Hash Table, String |
| 234 | Map Sum Pairs | Medium | Hash Table, String, Design, Trie |
| 235 | Matchsticks to Square | Medium | Array, Dynamic Programming, Backtracking, Bit Manipulation, Bitmask |
| 236 | Max Area of Island | Medium | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix |
| 237 | Max Consecutive Ones III | Medium | Array, Binary Search, Sliding Window, Prefix Sum |
| 238 | Max Number of K-Sum Pairs | Medium | Array, Hash Table, Two Pointers, Sorting |
| 239 | Max Sum of Rectangle No Larger Than K | Hard | Array, Binary Search, Matrix, Prefix Sum, Ordered Set |
| 240 | Maximal Rectangle | Hard | Array, Dynamic Programming, Stack, Matrix, Monotonic Stack |
| 241 | Maximal Square | Medium | Array, Dynamic Programming, Matrix |
| 242 | Maximize Distance to Closest Person | Medium | Array |
| 243 | Maximize the Confusion of an Exam | Medium | String, Binary Search, Sliding Window, Prefix Sum |
| 244 | Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts | Medium | Array, Greedy, Sorting |
| 245 | Maximum Depth of Binary Tree | Easy | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 246 | Maximum Difference Between Node and Ancestor | Medium | Tree, Depth-First Search, Binary Tree |
| 247 | Maximum Earnings From Taxi | Medium | Array, Hash Table, Binary Search, Dynamic Programming, Sorting |
| 248 | Maximum Element After Decreasing and Rearranging | Medium | Array, Greedy, Sorting |
| 249 | Maximum Erasure Value | Medium | Array, Hash Table, Sliding Window |
| 250 | Maximum Frequency Stack | Hard | Hash Table, Stack, Design, Ordered Set |
| 251 | Maximum Gap | Medium | Array, Sorting, Bucket Sort, Radix Sort, Pigeonhole Principle |
| 252 | Maximum Length of a Concatenated String with Unique Characters | Medium | Array, String, Backtracking, Bit Manipulation |
| 253 | Maximum Length of Repeated Subarray | Medium | Array, Binary Search, Dynamic Programming, Sliding Window, Rolling Hash, Hash Function |
| 254 | Maximum Number of Balloons | Easy | Hash Table, String, Counting |
| 255 | Maximum Number of Coins You Can Get | Medium | Array, Math, Greedy, Sorting, Game Theory |
| 256 | Maximum Performance of a Team | Hard | Array, Greedy, Sorting, Heap (Priority Queue) |
| 257 | Maximum Points You Can Obtain from Cards | Medium | Array, Sliding Window, Prefix Sum |
| 258 | Maximum Population Year | Easy | Array, Counting, Prefix Sum |
| 259 | Maximum Product of Splitted Binary Tree | Medium | Tree, Depth-First Search, Binary Tree |
| 260 | Maximum Product of Three Numbers | Easy | Array, Math, Sorting |
| 261 | Maximum Product of Two Elements in an Array | Easy | Array, Sorting, Heap (Priority Queue) |
| 262 | Maximum Product of Word Lengths | Medium | Array, String, Bit Manipulation |
| 263 | Maximum Product Subarray | Medium | Array, Dynamic Programming |
| 264 | Maximum Profit in Job Scheduling | Hard | Array, Binary Search, Dynamic Programming, Sorting |
| 265 | Maximum Score from Performing Multiplication Operations | Hard | Array, Dynamic Programming |
| 266 | Maximum Score of a Good Subarray | Hard | Array, Two Pointers, Binary Search, Stack, Monotonic Stack, Cartesian Tree |
| 267 | Maximum Split of Positive Even Integers | Medium | Math, Backtracking, Greedy |
| 268 | Maximum Subarray | Medium | Array, Divide and Conquer, Dynamic Programming |
| 269 | Maximum Sum Circular Subarray | Medium | Array, Divide and Conquer, Dynamic Programming, Queue, Monotonic Queue |
| 270 | Maximum Sum of Distinct Subarrays With Length K | Medium | Array, Hash Table, Sliding Window |
| 271 | Maximum Units on a Truck | Easy | Array, Greedy, Sorting |
| 272 | Maximum Width of Binary Tree | Medium | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 273 | Maximum XOR of Two Numbers in an Array | Medium | Array, Hash Table, Bit Manipulation, Trie |
| 274 | Median of Two Sorted Arrays | Hard | Array, Binary Search, Divide and Conquer |
| 275 | Merge Intervals | Medium | Array, Sorting, Quicksort |
| 276 | Merge k Sorted Lists | Hard | Linked List, Divide and Conquer, Heap (Priority Queue), Merge Sort, Tournament Sort |
| 277 | Merge Sorted Array | Easy | Array, Two Pointers, Sorting |
| 278 | Merge Two Sorted Lists | Easy | Linked List, Recursion |
| 279 | Min Cost Climbing Stairs | Easy | Array, Dynamic Programming |
| 280 | Min Cost to Connect All Points | Medium | Array, Union-Find, Graph Theory, Minimum Spanning Tree, Prim's Algorithm, Kruskal's Algorithm, Borůvka's Algorithm |
| 281 | Min Stack | Medium | Stack, Design |
| 282 | Mini Parser | Medium | String, Stack, Depth-First Search |
| 283 | Minimize Deviation in Array | Hard | Array, Greedy, Heap (Priority Queue), Ordered Set |
| 284 | Minimize Maximum Pair Sum in Array | Medium | Array, Two Pointers, Greedy, Sorting |
| 285 | Minimum Absolute Difference | Easy | Array, Sorting |
| 286 | Minimum Absolute Difference in BST | Easy | Tree, Depth-First Search, Breadth-First Search, Binary Search Tree, Binary Tree |
| 287 | Minimum Add to Make Parentheses Valid | Medium | String, Stack, Greedy, Bracket Sequences |
| 288 | Minimum Amount of Time to Collect Garbage | Medium | Array, String, Prefix Sum |
| 289 | Minimum Cost For Tickets | Medium | Array, Dynamic Programming |
| 290 | Minimum Cost Homecoming of a Robot in a Grid | Medium | Array, Greedy |
| 291 | Minimum Cost to Cut a Stick | Hard | Array, Dynamic Programming, Sorting |
| 292 | Minimum Difficulty of a Job Schedule | Hard | Array, Dynamic Programming |
| 293 | Minimum Domino Rotations For Equal Row | Medium | Array, Greedy |
| 294 | Minimum Falling Path Sum | Medium | Array, Dynamic Programming, Matrix |
| 295 | Minimum Height Trees | Medium | Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort |
| 296 | Minimum Insertion Steps to Make a String Palindrome | Hard | String, Dynamic Programming |
| 297 | Minimum Limit of Balls in a Bag | Medium | Array, Binary Search |
| 298 | Minimum Moves to Equal Array Elements II | Medium | Array, Math, Sorting |
| 299 | Minimum Moves to Spread Stones Over Grid | Medium | Array, Dynamic Programming, Backtracking, Bit Manipulation, Matrix, Bitmask |
| 300 | Minimum Number of Frogs Croaking | Medium | String, Counting |
| 301 | Minimum Number of Operations to Make Array Continuous | Hard | Array, Hash Table, Binary Search, Sliding Window |
| 302 | Minimum Number of Refueling Stops | Hard | Array, Dynamic Programming, Greedy, Heap (Priority Queue) |
| 303 | Minimum Number of Steps to Make Two Strings Anagram | Medium | Hash Table, String, Counting |
| 304 | Minimum Number of Taps to Open to Water a Garden | Hard | Array, Dynamic Programming, Greedy |
| 305 | Minimum Operations to Make the Array Alternating | Medium | Array, Hash Table, Greedy, Counting |
| 306 | Minimum Operations to Reduce X to Zero | Medium | Array, Hash Table, Binary Search, Sliding Window, Prefix Sum |
| 307 | Minimum Path Cost in a Grid | Medium | Array, Dynamic Programming, Matrix |
| 308 | Minimum Path Sum | Medium | Array, Dynamic Programming, Matrix |
| 309 | Minimum Remove to Make Valid Parentheses | Medium | String, Stack |
| 310 | Minimum Size Subarray Sum | Medium | Array, Binary Search, Sliding Window, Prefix Sum |
| 311 | Minimum Swaps To Make Sequences Increasing | Hard | Array, Dynamic Programming |
| 312 | Minimum Time to Make Rope Colorful | Medium | Array, String, Dynamic Programming, Greedy |
| 313 | Minimum Window Substring | Hard | Hash Table, String, Sliding Window |
| 314 | Missing Number | Easy | Array, Hash Table, Math, Binary Search, Bit Manipulation, Sorting |
| 315 | Most Stones Removed with Same Row or Column | Medium | Hash Table, Depth-First Search, Union-Find, Graph Theory, Bipartite Graph |
| 316 | Move Zeroes | Easy | Array, Two Pointers |
| 317 | Moving Average from Data Stream | Easy | Array, Design, Queue, Data Stream |
| 318 | My Calendar I | Medium | Array, Binary Search, Design, Segment Tree, Ordered Set |
| 319 | N-ary Tree Level Order Traversal | Medium | Tree, Breadth-First Search |
| 320 | N-Queens | Hard | Array, Backtracking, Algorithm X |
| 321 | N-Queens II | Hard | Backtracking, Algorithm X |
| 322 | N-th Tribonacci Number | Easy | Math, Dynamic Programming, Memoization |
| 323 | Network Delay Time | Medium | Depth-First Search, Breadth-First Search, Graph Theory, Heap (Priority Queue), Shortest Path, Dijkstra's Algorithm |
| 324 | Next Greater Element I | Easy | Array, Hash Table, Stack, Monotonic Stack |
| 325 | Next Greater Element II | Medium | Array, Stack, Monotonic Stack |
| 326 | Next Greater Element III | Medium | Math, Two Pointers, String |
| 327 | Next Permutation | Medium | Array, Two Pointers |
| 328 | Non-decreasing Array | Medium | Array |
| 329 | Non-negative Integers without Consecutive Ones | Hard | Dynamic Programming |
| 330 | Non-overlapping Intervals | Medium | Array, Dynamic Programming, Greedy, Sorting |
| 331 | Number of Dice Rolls With Target Sum | Medium | Dynamic Programming |
| 332 | Number of Islands | Medium | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix |
| 333 | Number of Matching Subsequences | Medium | Array, Hash Table, String, Binary Search, Dynamic Programming, Trie, Sorting |
| 334 | Number of Provinces | Medium | Depth-First Search, Breadth-First Search, Union-Find, Graph Theory |
| 335 | Number of Subarrays with Bounded Maximum | Medium | Array, Two Pointers |
| 336 | Number of Submatrices That Sum to Target | Hard | Array, Hash Table, Matrix, Prefix Sum |
| 337 | Number of Ways to Divide a Long Corridor | Hard | Math, String, Dynamic Programming |
| 338 | Numbers At Most N Given Digit Set | Hard | Array, Math, String, Binary Search, Dynamic Programming |
| 339 | Odd Even Linked List | Medium | Linked List |
| 340 | Ones and Zeroes | Medium | Array, String, Dynamic Programming, Knapsack Problem, 0-1 Knapsack |
| 341 | Online Stock Span | Medium | Stack, Design, Monotonic Stack, Data Stream |
| 342 | Orderly Queue | Hard | Math, String, Sorting, Lexicographically Minimal String Rotation |
| 343 | Out of Boundary Paths | Medium | Dynamic Programming |
| 344 | Paint House III | Hard | Array, Dynamic Programming |
| 345 | Pairs of Songs With Total Durations Divisible by 60 | Medium | Array, Hash Table, Counting |
| 346 | Palindrome Linked List | Easy | Linked List, Two Pointers, Stack, Recursion |
| 347 | Palindrome Pairs | Hard | Array, Hash Table, String, Trie, Hash Function |
| 348 | Palindrome Partitioning | Medium | String, Dynamic Programming, Backtracking |
| 349 | Palindrome Partitioning II | Hard | String, Dynamic Programming |
| 350 | Palindromic Substrings | Medium | Two Pointers, String, Dynamic Programming |
| 351 | Partition Array into Disjoint Intervals | Medium | Array |
| 352 | Partition Labels | Medium | Hash Table, Two Pointers, String, Greedy |
| 353 | Partition to K Equal Sum Subsets | Medium | Array, Dynamic Programming, Backtracking, Bit Manipulation, Memoization, Bitmask |
| 354 | Partitioning Into Minimum Number Of Deci-Binary Numbers | Medium | String, Greedy |
| 355 | Pascal's Triangle | Easy | Array, Dynamic Programming |
| 356 | Path Sum II | Medium | Backtracking, Tree, Depth-First Search, Binary Tree |
| 357 | Path Sum III | Medium | Tree, Depth-First Search, Binary Tree |
| 358 | Path with Maximum Probability | Medium | Array, Graph Theory, Heap (Priority Queue), Shortest Path, Dijkstra's Algorithm |
| 359 | Path With Minimum Effort | Medium | Array, Binary Search, Depth-First Search, Breadth-First Search, Union-Find, Heap (Priority Queue), Matrix, Dijkstra's Algorithm |
| 360 | Peak Index in a Mountain Array | Medium | Array, Binary Search, Ternary Search |
| 361 | Peeking Iterator | Medium | Array, Design, Iterator |
| 362 | Perfect Number | Easy | Math |
| 363 | Perfect Squares | Medium | Math, Dynamic Programming, Breadth-First Search, Knapsack Problem, Complete Knapsack |
| 364 | Permutation in String | Medium | Hash Table, Two Pointers, String, Sliding Window |
| 365 | Plus One | Easy | Array, Math |
| 366 | Populating Next Right Pointers in Each Node | Medium | Linked List, Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 367 | Populating Next Right Pointers in Each Node | Medium | Linked List, Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 368 | Pow(x, n) | Medium | Math, Recursion |
| 369 | Prefix and Suffix Search | Hard | Array, Hash Table, String, Design, Trie |
| 370 | Product of Array Except Self | Medium | Array, Prefix Sum |
| 371 | Product of the Last K Numbers | Medium | Array, Math, Design, Data Stream, Prefix Sum |
| 372 | Pseudo-Palindromic Paths in a Binary Tree | Medium | Bit Manipulation, Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 373 | Push Dominoes | Medium | Two Pointers, String, Dynamic Programming |
| 374 | Random Pick with Weight | Medium | Array, Math, Binary Search, Prefix Sum, Randomized |
| 375 | Range Addition II | Easy | Array, Math |
| 376 | Range Sum Query - Mutable | Medium | Array, Divide and Conquer, Design, Binary Indexed Tree, Segment Tree, Sqrt Decomposition |
| 377 | Range Sum Query 2D - Immutable | Medium | Array, Design, Matrix, Prefix Sum |
| 378 | Reachable Nodes In Subdivided Graph | Hard | Graph Theory, Heap (Priority Queue), Shortest Path, Dijkstra's Algorithm |
| 379 | Reconstruct Itinerary | Hard | Array, String, Depth-First Search, Graph Theory, Sorting, Heap (Priority Queue), Eulerian Circuit, Eulerian Path, Semi-Eulerian Graph |
| 380 | Reconstruct Original Digits from English | Medium | Hash Table, Math, String |
| 381 | Recover Binary Search Tree | Medium | Tree, Depth-First Search, Binary Search Tree, Binary Tree |
| 382 | Reduce Array Size to The Half | Medium | Array, Hash Table, Greedy, Sorting, Heap (Priority Queue) |
| 383 | Reduction Operations to Make the Array Elements Equal | Medium | Array, Sorting |
| 384 | Redundant Connection | Medium | Depth-First Search, Breadth-First Search, Union-Find, Graph Theory |
| 385 | Regions Cut By Slashes | Medium | Array, Hash Table, Depth-First Search, Breadth-First Search, Union-Find, Matrix, Planar Graph |
| 386 | Regular Expression Matching | Hard | String, Dynamic Programming, Recursion |
| 387 | Remove All Adjacent Duplicates In String | Easy | String, Stack |
| 388 | Remove All Adjacent Duplicates in String II | Medium | String, Stack |
| 389 | Remove Covered Intervals | Medium | Array, Sorting |
| 390 | Remove Duplicate Letters | Medium | String, Stack, Greedy, Monotonic Stack |
| 391 | Remove Duplicates from Sorted Array | Easy | Array, Two Pointers |
| 392 | Remove Duplicates from Sorted Array II | Medium | Array, Two Pointers |
| 393 | Remove Duplicates from Sorted List II | Medium | Linked List, Two Pointers |
| 394 | Remove Element | Easy | Array, Two Pointers |
| 395 | Remove Linked List Elements | Easy | Linked List, Recursion |
| 396 | Remove Nth Node From End of List | Medium | Linked List, Two Pointers |
| 397 | Remove Sub-Folders from the Filesystem | Medium | Array, String, Depth-First Search, Trie |
| 398 | Replace Elements with Greatest Element on Right Side | Easy | Array |
| 399 | Replace Words | Medium | Array, Hash Table, String, Trie |
| 400 | Reshape the Matrix | Easy | Array, Matrix, Simulation |
| 401 | Restore the Array From Adjacent Pairs | Medium | Array, Hash Table, Depth-First Search |
| 402 | Reverse Linked List | Easy | Linked List, Recursion |
| 403 | Reverse Linked List II | Medium | Linked List |
| 404 | Reverse Nodes in k-Group | Hard | Linked List, Recursion |
| 405 | Reverse Only Letters | Easy | Two Pointers, String |
| 406 | Reverse String II | Easy | Two Pointers, String |
| 407 | Reverse Words in a String | Medium | Two Pointers, String |
| 408 | Rotate Array | Medium | Array, Math, Two Pointers |
| 409 | Rotate Image | Medium | Array, Math, Matrix |
| 410 | Rotate List | Medium | Linked List, Two Pointers |
| 411 | Running Sum of 1d Array | Easy | Array, Prefix Sum |
| 412 | Russian Doll Envelopes | Hard | Array, Binary Search, Dynamic Programming, Sorting, Longest Increasing Subsequence |
| 413 | Satisfiability of Equality Equations | Medium | Array, String, Union-Find, Graph Theory |
| 414 | Score After Flipping Matrix | Medium | Array, Greedy, Bit Manipulation, Matrix |
| 415 | Score of Parentheses | Medium | String, Stack, Bracket Sequences |
| 416 | Search a 2D Matrix | Medium | Array, Binary Search, Matrix |
| 417 | Search a 2D Matrix II | Medium | Array, Binary Search, Divide and Conquer, Matrix |
| 418 | Search in Rotated Sorted Array | Medium | Array, Binary Search |
| 419 | Search in Rotated Sorted Array II | Medium | Array, Binary Search |
| 420 | Search Insert Position | Easy | Array, Binary Search |
| 421 | Search Suggestions System | Medium | Array, String, Binary Search, Trie, Sorting, Heap (Priority Queue) |
| 422 | Seat Reservation Manager | Medium | Design, Heap (Priority Queue) |
| 423 | Second Minimum Node In a Binary Tree | Easy | Tree, Depth-First Search, Binary Tree |
| 424 | Set Matrix Zeroes | Medium | Array, Hash Table, Matrix |
| 425 | Shifting Letters | Medium | Array, String, Prefix Sum |
| 426 | Shortest Path in a Grid with Obstacles Elimination | Hard | Array, Breadth-First Search, Matrix |
| 427 | Shortest Path in Binary Matrix | Medium | Array, Breadth-First Search, Matrix |
| 428 | Shortest Unsorted Continuous Subarray | Medium | Array, Two Pointers, Stack, Greedy, Sorting, Monotonic Stack |
| 429 | Shortest Way to Form String | Medium | Two Pointers, String, Binary Search, Greedy |
| 430 | Shuffle an Array | Medium | Array, Math, Design, Randomized |
| 431 | Simplify Path | Medium | String, Stack |
| 432 | Single Number | Easy | Array, Bit Manipulation |
| 433 | Single Number II | Medium | Array, Bit Manipulation |
| 434 | Single Number III | Medium | Array, Bit Manipulation |
| 435 | Sliding Window Maximum | Hard | Array, Queue, Sliding Window, Heap (Priority Queue), Monotonic Queue, Range Minimum/Maximum Query |
| 436 | Sliding Window Median | Hard | Array, Hash Table, Sliding Window, Heap (Priority Queue), Treap |
| 437 | Slowest Key | Easy | Array, String |
| 438 | Smallest Range I | Easy | Array, Math |
| 439 | Smallest String With A Given Numeric Value | Medium | String, Greedy |
| 440 | Smallest String With Swaps | Medium | Array, Hash Table, String, Depth-First Search, Breadth-First Search, Union-Find, Sorting |
| 441 | Smallest Subsequence of Distinct Characters | Medium | String, Stack, Greedy, Monotonic Stack |
| 442 | Smallest Subtree with all the Deepest Nodes | Medium | Hash Table, Tree, Depth-First Search, Breadth-First Search, Binary Tree, Binary Lifting, Lowest Common Ancestor, DP on Trees |
| 443 | Sort an Array | Medium | Array, Divide and Conquer, Sorting, Heap (Priority Queue), Merge Sort, Bucket Sort, Radix Sort, Counting Sort |
| 444 | Sort Array By Parity II | Easy | Array, Two Pointers, Sorting |
| 445 | Sort Colors | Medium | Array, Two Pointers, Sorting, Quicksort, Bubble Sort |
| 446 | Sort Vowels in a String | Medium | String, Sorting |
| 447 | Spiral Matrix | Medium | Array, Matrix, Simulation |
| 448 | Spiral Matrix II | Medium | Array, Matrix, Simulation |
| 449 | Split Array Largest Sum | Hard | Array, Binary Search, Dynamic Programming, Greedy, Prefix Sum |
| 450 | Split Linked List in Parts | Medium | Linked List |
| 451 | Sqrt(x) | Easy | Math, Binary Search, Newton's Method |
| 452 | Squares of a Sorted Array | Easy | Array, Two Pointers, Sorting |
| 453 | Steps to Make Array Non-decreasing | Medium | Array, Linked List, Dynamic Programming, Stack, Monotonic Stack, Simulation |
| 454 | Stock Price Fluctuation | Medium | Hash Table, Design, Heap (Priority Queue), Data Stream, Ordered Set |
| 455 | Stone Game | Medium | Array, Math, Dynamic Programming, Minimax, Game Theory, Zero-Sum Game |
| 456 | Stone Game IV | Hard | Math, Dynamic Programming, Minimax, Game Theory, Nim Game, Sprague–Grundy Theorem, Zero-Sum Game |
| 457 | Stone Game VII | Medium | Array, Math, Dynamic Programming, Minimax, Game Theory, Zero-Sum Game |
| 458 | Stream of Characters | Hard | Array, String, Design, Trie, Data Stream, Aho–Corasick Algorithm |
| 459 | Student Attendance Record I | Easy | String |
| 460 | Subarray Sum Equals K | Medium | Array, Hash Table, Prefix Sum |
| 461 | Subarrays with K Different Integers | Hard | Array, Hash Table, Sliding Window, Counting |
| 462 | Subsets | Medium | Array, Backtracking, Bit Manipulation |
| 463 | Subsets II | Medium | Array, Backtracking, Bit Manipulation |
| 464 | Subtree of Another Tree | Easy | Tree, Depth-First Search, String Matching, Binary Tree, Hash Function |
| 465 | Sudoku Solver | Hard | Array, Hash Table, Backtracking, Matrix, Algorithm X, Dancing Links |
| 466 | Sum of Absolute Differences in a Sorted Array | Medium | Array, Math, Prefix Sum |
| 467 | Sum of Beauty in the Array | Medium | Array |
| 468 | Sum of Distances in Tree | Hard | Dynamic Programming, Tree, Depth-First Search, Graph Theory, DP on Trees |
| 469 | Sum of Square Numbers | Medium | Math, Two Pointers, Binary Search |
| 470 | Sum of Subarray Minimums | Medium | Array, Dynamic Programming, Stack, Monotonic Stack |
| 471 | Super Palindromes | Hard | Math, String, Enumeration |
| 472 | Surrounded Regions | Medium | Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix |
| 473 | Swap Nodes in Pairs | Medium | Linked List, Recursion |
| 474 | Symmetric Tree | Easy | Tree, Depth-First Search, Breadth-First Search, Binary Tree |
| 475 | Target Sum | Medium | Array, Dynamic Programming, Backtracking, Knapsack Problem, 0-1 Knapsack |
| 476 | Teemo Attacking | Easy | Array, Simulation |
| 477 | The Number of the Smallest Unoccupied Chair | Medium | Array, Hash Table, Heap (Priority Queue) |
| 478 | Third Maximum Number | Easy | Array, Sorting |
| 479 | Three Equal Parts | Hard | Array, Math |
| 480 | Time Based Key-Value Store | Medium | Hash Table, String, Binary Search, Design |
| 481 | To Lower Case | Easy | String |
| 482 | Top K Frequent Elements | Medium | Array, Hash Table, Divide and Conquer, Sorting, Heap (Priority Queue), Bucket Sort, Counting, Quickselect |
| 483 | Top K Frequent Words | Medium | Array, Hash Table, String, Trie, Sorting, Heap (Priority Queue), Bucket Sort, Counting |
| 484 | Trapping Rain Water | Hard | Array, Two Pointers, Dynamic Programming, Stack, Monotonic Stack |
| 485 | Triangle | Medium | Array, Dynamic Programming |
| 486 | Two City Scheduling | Medium | Array, Greedy, Sorting, Hungarian Algorithm, Successive Shortest Path Algorithm |
| 487 | Two Sum | Easy | Array, Hash Table |
| 488 | Two Sum II - Input Array Is Sorted | Medium | Array, Two Pointers, Binary Search |
| 489 | Two Sum IV - Input is a BST | Easy | Hash Table, Two Pointers, Tree, Depth-First Search, Breadth-First Search, Binary Search Tree, Binary Tree |
| 490 | Uncommon Words from Two Sentences | Easy | Hash Table, String, Counting |
| 491 | Unique Binary Search Trees | Medium | Math, Dynamic Programming, Tree, Binary Search Tree, Binary Tree |
| 492 | Unique Binary Search Trees II | Medium | Dynamic Programming, Backtracking, Tree, Binary Search Tree, Binary Tree |
| 493 | Unique Email Addresses | Easy | Array, Hash Table, String |
| 494 | Unique Length-3 Palindromic Subsequences | Medium | Hash Table, String, Bit Manipulation, Prefix Sum |
| 495 | Unique Paths | Medium | Math, Dynamic Programming, Combinatorics |
| 496 | Unique Paths II | Medium | Array, Dynamic Programming, Matrix |
| 497 | Unique Paths III | Hard | Array, Backtracking, Bit Manipulation, Matrix, Hamiltonian Path |
| 498 | Valid Mountain Array | Easy | Array |
| 499 | Valid Number | Hard | String |
| 500 | Valid Parentheses | Easy | String, Stack, Bracket Sequences |
| 501 | Valid Sudoku | Medium | Array, Hash Table, Matrix |
| 502 | Valid Tic-Tac-Toe State | Medium | Array, Matrix |
| 503 | Valid Triangle Number | Medium | Array, Two Pointers, Binary Search, Greedy, Sorting |
| 504 | Validate Binary Search Tree | Medium | Tree, Depth-First Search, Binary Search Tree, Binary Tree |
| 505 | Validate Stack Sequences | Medium | Array, Stack, Simulation |
| 506 | Vertical Order Traversal of a Binary Tree | Hard | Hash Table, Tree, Depth-First Search, Breadth-First Search, Sorting, Binary Tree |
| 507 | Word Break | Medium | Array, Hash Table, String, Dynamic Programming, Trie, Memoization, Brute-Force Search |
| 508 | Word Ladder | Hard | Hash Table, String, Breadth-First Search, Bidirectional Search |
| 509 | Word Ladder II | Hard | Hash Table, String, Backtracking, Breadth-First Search, Bidirectional Search |
| 510 | Word Search | Medium | Array, String, Backtracking, Depth-First Search, Matrix |
| 511 | Word Search II | Hard | Array, String, Backtracking, Trie, Matrix |
Use tools/leetcode_agent.py to scaffold a new solved problem from a LeetCode URL.
Step 1 creates the problem folder inside problems/ with fetched README.md and empty solution.py; step 2 updates this index, commits, and pushes.