NeetCode 150 — LeetCode Study Plan
The NeetCode 150 expands the Blind 75 to 150 problems covering every pattern coding interviews test. Here is the full list, grouped by category. Problems with a link have a full write-up — key idea, solution, and a step-by-step visualization — and every one is built to review with spaced repetition so the pattern sticks.
We have 150 of these with full solutions.
Arrays & Hashing
- Contains DuplicateEASY
- Valid AnagramEASY
- Two SumEASY
- Group AnagramsMEDIUM
- Top K Frequent ElementsMEDIUM
- Encode and Decode StringsMEDIUM
- Product of Array Except SelfMEDIUM
- Valid SudokuMEDIUM
- Longest Consecutive SequenceMEDIUM
Two Pointers
- Valid PalindromeEASY
- Two Sum II - Input Array Is SortedMEDIUM
- 3SumMEDIUM
- Container With Most WaterMEDIUM
- Trapping Rain WaterHARD
Sliding Window
- Best Time to Buy and Sell StockEASY
- Longest Substring Without Repeating CharactersMEDIUM
- Longest Repeating Character ReplacementMEDIUM
- Permutation in StringMEDIUM
- Minimum Window SubstringHARD
- Sliding Window MaximumHARD
Stack
- Valid ParenthesesEASY
- Min StackMEDIUM
- Evaluate Reverse Polish NotationMEDIUM
- Generate ParenthesesMEDIUM
- Daily TemperaturesMEDIUM
- Car FleetMEDIUM
- Largest Rectangle in HistogramHARD
Binary Search
- Binary SearchEASY
- Search a 2D MatrixMEDIUM
- Koko Eating BananasMEDIUM
- Find Minimum in Rotated Sorted ArrayMEDIUM
- Search in Rotated Sorted ArrayMEDIUM
- Time Based Key-Value StoreMEDIUM
- Median of Two Sorted ArraysHARD
Linked List
- Reverse Linked ListEASY
- Merge Two Sorted ListsEASY
- Reorder ListMEDIUM
- Remove Nth Node From End of ListMEDIUM
- Copy List with Random PointerMEDIUM
- Add Two NumbersMEDIUM
- Linked List CycleEASY
- Find the Duplicate NumberMEDIUM
- LRU CacheMEDIUM
- Merge k Sorted ListsHARD
- Reverse Nodes in k-GroupHARD
Trees
- Invert Binary TreeEASY
- Maximum Depth of Binary TreeEASY
- Diameter of Binary TreeEASY
- Balanced Binary TreeEASY
- Same TreeEASY
- Subtree of Another TreeEASY
- Lowest Common Ancestor of a Binary Search TreeMEDIUM
- Binary Tree Level Order TraversalMEDIUM
- Binary Tree Right Side ViewMEDIUM
- Count Good Nodes in Binary TreeMEDIUM
- Validate Binary Search TreeMEDIUM
- Kth Smallest Element in a BSTMEDIUM
- Construct Binary Tree from Preorder and Inorder TraversalMEDIUM
- Binary Tree Maximum Path SumHARD
- Serialize and Deserialize Binary TreeHARD
Tries
- Implement Trie (Prefix Tree)MEDIUM
- Design Add and Search Words Data StructureMEDIUM
- Word Search IIHARD
Heap / Priority Queue
- Kth Largest Element in a StreamEASY
- Last Stone WeightEASY
- K Closest Points to OriginMEDIUM
- Kth Largest Element in an ArrayMEDIUM
- Task SchedulerMEDIUM
- Design TwitterMEDIUM
- Find Median from Data StreamHARD
Backtracking
- SubsetsMEDIUM
- Combination SumMEDIUM
- PermutationsMEDIUM
- Subsets IIMEDIUM
- Combination Sum IIMEDIUM
- Word SearchMEDIUM
- Palindrome PartitioningMEDIUM
- Letter Combinations of a Phone NumberMEDIUM
- N-QueensHARD
Graphs
- Number of IslandsMEDIUM
- Max Area of IslandMEDIUM
- Clone GraphMEDIUM
- Walls and GatesMEDIUM
- Rotting OrangesMEDIUM
- Pacific Atlantic Water FlowMEDIUM
- Surrounded RegionsMEDIUM
- Course ScheduleMEDIUM
- Course Schedule IIMEDIUM
- Graph Valid TreeMEDIUM
- Number of Connected Components in an Undirected GraphMEDIUM
- Redundant ConnectionMEDIUM
- Word LadderHARD
Advanced Graphs
- Reconstruct ItineraryHARD
- Min Cost to Connect All PointsMEDIUM
- Network Delay TimeMEDIUM
- Swim in Rising WaterHARD
- Alien DictionaryHARD
- Cheapest Flights Within K StopsMEDIUM
1-D DP
- Climbing StairsEASY
- Min Cost Climbing StairsEASY
- House RobberMEDIUM
- House Robber IIMEDIUM
- Longest Palindromic SubstringMEDIUM
- Palindromic SubstringsMEDIUM
- Decode WaysMEDIUM
- Coin ChangeMEDIUM
- Maximum Product SubarrayMEDIUM
- Word BreakMEDIUM
- Longest Increasing SubsequenceMEDIUM
- Partition Equal Subset SumMEDIUM
2-D DP
- Unique PathsMEDIUM
- Longest Common SubsequenceMEDIUM
- Best Time to Buy and Sell Stock with CooldownMEDIUM
- Coin Change IIMEDIUM
- Target SumMEDIUM
- Interleaving StringMEDIUM
- Longest Increasing Path in a MatrixHARD
- Distinct SubsequencesHARD
- Edit DistanceHARD
- Burst BalloonsHARD
- Regular Expression MatchingHARD
Greedy
- Maximum SubarrayMEDIUM
- Jump GameMEDIUM
- Jump Game IIMEDIUM
- Gas StationMEDIUM
- Hand of StraightsMEDIUM
- Merge Triplets to Form Target TripletMEDIUM
- Partition LabelsMEDIUM
- Valid Parenthesis StringMEDIUM
Intervals
- Insert IntervalMEDIUM
- Merge IntervalsMEDIUM
- Non-overlapping IntervalsMEDIUM
- Meeting RoomsEASY
- Meeting Rooms IIMEDIUM
- Minimum Interval to Include Each QueryHARD
Math & Geometry
- Rotate ImageMEDIUM
- Spiral MatrixMEDIUM
- Set Matrix ZeroesMEDIUM
- Happy NumberEASY
- Plus OneEASY
- Multiply StringsMEDIUM
- Detect SquaresMEDIUM
- Pow(x, n)MEDIUM
Bit Manipulation
- Single NumberEASY
- Number of 1 BitsEASY
- Counting BitsEASY
- Reverse BitsEASY
- Missing NumberEASY
- Sum of Two IntegersMEDIUM
- Reverse IntegerMEDIUM
Start free →
Capture every solve and let spaced repetition do the rest.