NeetCode 150
A curated set of 150 problems covering every major pattern you need for coding interviews.
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
Stack
- Valid ParenthesesEasy
- Min StackMedium
- Evaluate Reverse Polish NotationMedium
- Daily TemperaturesMedium
- Car FleetMedium
- Largest Rectangle In HistogramHard
Binary Search
Linked List
- Reverse Linked ListEasy
- Merge Two Sorted ListsEasy
- Linked List CycleEasy
- Reorder ListMedium
- Remove Nth Node From End of ListMedium
- Copy List with Random PointerMedium
- Add Two NumbersMedium
- 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
Heap / Priority Queue
Backtracking
- SubsetsMedium
- Combination SumMedium
- Combination Sum IIMedium
- PermutationsMedium
- Subsets IIMedium
- Generate ParenthesesMedium
- Word SearchMedium
- Palindrome PartitioningMedium
- Letter Combinations of a Phone NumberMedium
- N QueensHard
Tries
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
1-D Dynamic Programming
- 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 Dynamic Programming
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
- Pow(x, n)Medium
- Multiply StringsMedium
- Detect SquaresMedium
Bit Manipulation
- Single NumberEasy
- Number of 1 BitsEasy
- Counting BitsEasy
- Reverse BitsEasy
- Missing NumberEasy
- Sum of Two IntegersMedium
- Reverse IntegerMedium