150NeetCode 150

Interview roadmap

NeetCode 150, solved in Java.

All 150 problems in roadmap order across 17 topics. 75 of them are tagged Blind 75 and 21 are Hard. Each one walks from brute force to the optimal data structure, with explanations, diagrams and complete Java code.

Overall progress
0 / 150
Easy0/28
Medium0/101
Hard0/21
  1. 1.Contains DuplicateEasy
  2. 2.Valid AnagramEasy
  3. 3.Two SumEasy
  4. 4.Group AnagramsMedium
  5. 5.Top K Frequent ElementsMedium
  6. 6.Product of Array Except SelfMedium
  7. 7.Valid SudokuMedium
  8. 8.Encode and Decode StringsMedium
  9. 9.Longest Consecutive SequenceMedium
  1. 1.Valid PalindromeEasy
  2. 2.Two Sum IIMedium
  3. 3.3SumMedium
  4. 4.Container With Most WaterMedium
  5. 5.Trapping Rain WaterHard
  1. 1.Best Time to Buy and Sell StockEasy
  2. 2.Longest Substring Without Repeating CharactersMedium
  3. 3.Longest Repeating Character ReplacementMedium
  4. 4.Permutation in StringMedium
  5. 5.Minimum Window SubstringHard
  6. 6.Sliding Window MaximumHard
  1. 1.Valid ParenthesesEasy
  2. 2.Min StackMedium
  3. 3.Evaluate Reverse Polish NotationMedium
  4. 4.Generate ParenthesesMedium
  5. 5.Daily TemperaturesMedium
  6. 6.Car FleetMedium
  7. 7.Largest Rectangle in HistogramHard
  1. 1.Reverse Linked ListEasy
  2. 2.Merge Two Sorted ListsEasy
  3. 3.Reorder ListMedium
  4. 4.Remove Nth Node From End of ListMedium
  5. 5.Copy List With Random PointerMedium
  6. 6.Add Two NumbersMedium
  7. 7.Linked List CycleEasy
  8. 8.Find the Duplicate NumberMedium
  9. 9.LRU CacheMedium
  10. 10.Merge K Sorted ListsHard
  11. 11.Reverse Nodes in K GroupHard
  1. 1.Invert Binary TreeEasy
  2. 2.Maximum Depth of Binary TreeEasy
  3. 3.Diameter of Binary TreeEasy
  4. 4.Balanced Binary TreeEasy
  5. 5.Same TreeEasy
  6. 6.Subtree of Another TreeEasy
  7. 7.Lowest Common Ancestor of a BSTMedium
  8. 8.Binary Tree Level Order TraversalMedium
  9. 9.Binary Tree Right Side ViewMedium
  10. 10.Count Good Nodes in Binary TreeMedium
  11. 11.Validate Binary Search TreeMedium
  12. 12.Kth Smallest Element in a BSTMedium
  13. 13.Construct Binary Tree from Preorder and Inorder TraversalMedium
  14. 14.Binary Tree Maximum Path SumHard
  15. 15.Serialize and Deserialize Binary TreeHard
  1. 1.Implement Trie (Prefix Tree)Medium
  2. 2.Design Add and Search Words Data StructureMedium
  3. 3.Word Search IIHard
  1. 1.Kth Largest Element in a StreamEasy
  2. 2.Last Stone WeightEasy
  3. 3.K Closest Points to OriginMedium
  4. 4.Kth Largest Element in an ArrayMedium
  5. 5.Task SchedulerMedium
  6. 6.Design TwitterMedium
  7. 7.Find Median from Data StreamHard
  1. 1.SubsetsMedium
  2. 2.Combination SumMedium
  3. 3.PermutationsMedium
  4. 4.Subsets IIMedium
  5. 5.Combination Sum IIMedium
  6. 6.Word SearchMedium
  7. 7.Palindrome PartitioningMedium
  8. 8.Letter Combinations of a Phone NumberMedium
  9. 9.N-QueensHard
  1. 1.Number of IslandsMedium
  2. 2.Clone GraphMedium
  3. 3.Max Area of IslandMedium
  4. 4.Pacific Atlantic Water FlowMedium
  5. 5.Surrounded RegionsMedium
  6. 6.Rotting OrangesMedium
  7. 7.Walls and GatesMedium
  8. 8.Course ScheduleMedium
  9. 9.Course Schedule IIMedium
  10. 10.Redundant ConnectionMedium
  11. 11.Number of Connected ComponentsMedium
  12. 12.Graph Valid TreeMedium
  13. 13.Word LadderHard
  14. 14.Reconstruct ItineraryHard
  15. 15.Min Cost to Connect All PointsMedium
  16. 16.Network Delay TimeMedium
  17. 17.Swim in Rising WaterHard
  18. 18.Alien DictionaryHard
  19. 19.Cheapest Flights Within K StopsMedium
  1. 1.Climbing StairsEasy
  2. 2.Min Cost Climbing StairsEasy
  3. 3.House RobberMedium
  4. 4.House Robber IIMedium
  5. 5.Longest Palindromic SubstringMedium
  6. 6.Palindromic SubstringsMedium
  7. 7.Decode WaysMedium
  8. 8.Coin ChangeMedium
  9. 9.Maximum Product SubarrayMedium
  10. 10.Word BreakMedium
  11. 11.Longest Increasing SubsequenceMedium
  12. 12.Partition Equal Subset SumMedium
  1. 1.Unique PathsMedium
  2. 2.Longest Common SubsequenceMedium
  3. 3.Best Time to Buy and Sell Stock with CooldownMedium
  4. 4.Coin Change IIMedium
  5. 5.Target SumMedium
  6. 6.Interleaving StringMedium
  7. 7.Longest Increasing Path in a MatrixHard
  8. 8.Distinct SubsequencesHard
  9. 9.Edit DistanceMedium
  10. 10.Burst BalloonsHard
  11. 11.Regular Expression MatchingHard
  1. 1.Maximum SubarrayMedium
  2. 2.Jump GameMedium
  3. 3.Jump Game IIMedium
  4. 4.Gas StationMedium
  5. 5.Hand of StraightsMedium
  6. 6.Merge Triplets to Form Target TripletMedium
  7. 7.Partition LabelsMedium
  8. 8.Valid Parenthesis StringMedium
  1. 1.Insert IntervalMedium
  2. 2.Merge IntervalsMedium
  3. 3.Non Overlapping IntervalsMedium
  4. 4.Meeting RoomsEasy
  5. 5.Meeting Rooms IIMedium
  6. 6.Minimum Interval to Include Each QueryHard
  1. 1.Rotate ImageMedium
  2. 2.Spiral MatrixMedium
  3. 3.Set Matrix ZeroesMedium
  4. 4.Happy NumberEasy
  5. 5.Plus OneEasy
  6. 6.Pow(x, n)Medium
  7. 7.Multiply StringsMedium
  8. 8.Detect SquaresMedium
  1. 1.Single NumberEasy
  2. 2.Number of 1 BitsEasy
  3. 3.Counting BitsEasy
  4. 4.Reverse BitsEasy
  5. 5.Missing NumberEasy
  6. 6.Sum of Two IntegersMedium
  7. 7.Reverse IntegerMedium