Practice Problems
Each problem teaches a transferable pattern, the kind that shows up again and again in technical interviews at top companies.
150problems
31patterns covered
30+companies represented
Start here
Two Sum
Free Starter · 5 problems
Premium · 145 problems
- 6.Best Time to Buy and Sell StockAmazonGoldman SachsGoogleTracking MinimumEasy🔒
- 7.Merge Two Sorted ListsGoogleAmazonMicrosoftLinked ListEasy🔒
- 8.Binary SearchGoogleAmazonMetaBinary SearchEasy🔒
- 9.Search Insert PositionGoogleAmazonBinary SearchEasy🔒
- 10.Move ZeroesMetaGoogleAmazonTwo PointersEasy🔒
- 11.Maximum SubarrayAmazonGoogleAppleKadane's AlgorithmMedium🔒
- 12.Longest Substring Without Repeating CharactersAmazonGoogleBloombergSliding WindowMedium🔒
- 13.Maximum Average Subarray IAmazonGoogleSliding WindowEasy🔒
- 14.Min StackAmazonGoogleBloombergStackMedium🔒
- 15.Invert Binary TreeGoogleAmazonAppleTree TraversalEasy🔒
- 16.Ransom NoteAmazonGoogleMetaHash MapEasy🔒
- 17.Group AnagramsAmazonGoogleBloombergHash MapMedium🔒
- 18.Happy NumberAmazonGoogleSetEasy🔒
- 19.Longest Consecutive SequenceGoogleAmazonLinkedInSetMedium🔒
- 20.First Unique Character in a StringAmazonBloombergGoogleFrequency MapEasy🔒
- 21.Top K Frequent ElementsAmazonGoogleMetaFrequency MapMedium🔒
- 22.Squares of a Sorted ArrayGoogleAmazonTwo PointersEasy🔒
- 23.Two Sum IIAmazonAppleGoogleTwo PointersMedium🔒
- 24.Minimum Size Subarray SumAmazonGoogleMetaSliding WindowMedium🔒
- 25.Permutation in StringAmazonGoogleMicrosoftSliding WindowMedium🔒
- 26.Baseball GameAmazonGoogleStackEasy🔒
- 27.Daily TemperaturesAmazonGoogleMicrosoftStackMedium🔒
- 28.First Bad VersionAmazonGoogleMetaBinary SearchEasy🔒
- 29.Find Minimum in Rotated Sorted ArrayAmazonGoogleMicrosoftBinary SearchMedium🔒
- 30.Reverse Linked ListAmazonGoogleAppleLinked ListEasy🔒
- 31.Linked List CycleAmazonGoogleMicrosoftLinked ListEasy🔒
- 32.Middle of the Linked ListAmazonGoogleLinked ListEasy🔒
- 33.Maximum Product SubarrayAmazonGoogleAppleKadane's AlgorithmMedium🔒
- 34.Maximum Depth of Binary TreeAmazonGoogleMetaTree TraversalEasy🔒
- 35.Same TreeAmazonGoogleTree TraversalEasy🔒
- 36.Find All Anagrams in a StringAmazonGoogleMicrosoftSliding WindowMedium🔒
- 37.Fruit Into BasketsAmazonGoogleMetaSliding WindowMedium🔒
- 38.Container With Most WaterGoogleAmazonMetaTwo PointersMedium🔒
- 39.3SumAmazonGoogleMetaTwo PointersMedium🔒
- 40.Evaluate Reverse Polish NotationAmazonGoogleLinkedInStackMedium🔒
- 41.Next Greater Element IAmazonGoogleStackEasy🔒
- 42.Next Greater Element IIAmazonGoogleStackMedium🔒
- 43.Stock SpannerAmazonGoogleMicrosoftStackMedium🔒
- 44.Largest Rectangle in HistogramAmazonGoogleMetaStackHard🔒
- 45.Search in Rotated Sorted ArrayAmazonGoogleMicrosoftBinary SearchMedium🔒
- 46.Koko Eating BananasAmazonGoogleMetaBinary SearchMedium🔒
- 47.Flood FillAmazonGoogleMicrosoftGraph TraversalEasy🔒
- 48.Number of IslandsAmazonGoogleMetaGraph TraversalMedium🔒
- 49.Max Area of IslandAmazonGoogleMetaGraph TraversalMedium🔒
- 50.Climbing StairsAmazonGoogleAppleDynamic ProgrammingEasy🔒
- 51.House RobberAmazonGoogleMicrosoftDynamic ProgrammingMedium🔒
- 52.Coin ChangeAmazonGoogleMetaDynamic ProgrammingMedium🔒
- 53.SubsetsAmazonGoogleMicrosoftBacktrackingMedium🔒
- 54.PermutationsGoogleAmazonMicrosoftBacktrackingMedium🔒
- 55.Product of Array Except SelfAmazonAppleGooglePrefix SumMedium🔒
- 56.Merge IntervalsGoogleAmazonMetaIntervalsMedium🔒
- 57.Missing NumberAmazonGoogleMicrosoftBit ManipulationEasy🔒
- 58.Single NumberAmazonGoogleAppleBit ManipulationEasy🔒
- 59.Symmetric TreeMicrosoftAmazonGoogleTree TraversalEasy🔒
- 60.Binary Tree Level Order TraversalAmazonGoogleMicrosoftTree TraversalMedium🔒
- 61.Min Cost Climbing StairsAmazonGoogleDynamic ProgrammingEasy🔒
- 62.Letter Combinations of a Phone NumberGoogleAmazonMetaBacktrackingMedium🔒
- 63.Subarray Sum Equals KAmazonGoogleMicrosoftPrefix SumMedium🔒
- 64.Insert IntervalGoogleAmazonLinkedInIntervalsMedium🔒
- 65.CombinationsGoogleAmazonBacktrackingMedium🔒
- 66.Kth Largest Element in an ArrayAmazonGoogleMetaHeap / Priority QueueMedium🔒
- 67.Word SearchAmazonMicrosoftGoogleBacktrackingHard🔒
- 68.Find Median from Data StreamAmazonGoogleMicrosoftTwo HeapsHard🔒
- 69.Alien DictionaryGoogleAmazonMetaTopological SortHard🔒
- 70.IPOAmazonTwo HeapsHard🔒
- 71.Sliding Window MedianAmazonGoogleTwo HeapsHard🔒
- 72.Count of Smaller Numbers After SelfGoogleAmazonDivide and ConquerHard🔒
- 73.Word Search IIAmazonGoogleMicrosoftTrieHard🔒
- 74.Course ScheduleAmazonGoogleMetaTopological SortMedium🔒
- 75.Course Schedule IIGoogleAmazonAppleTopological SortMedium🔒
- 76.Non-Overlapping IntervalsGoogleAmazonGreedyMedium🔒
- 77.Clone GraphAmazonGoogleMetaGraph TraversalMedium🔒
- 78.Jump GameAmazonGoogleMicrosoftGreedyMedium🔒
- 79.Jump Game IIAmazonGoogleGreedyMedium🔒
- 80.Decode WaysAmazonGoogleMetaDynamic ProgrammingMedium🔒
- 81.Find the Duplicate NumberAmazonGoogleFast and Slow PointersMedium🔒
- 82.Unique PathsAmazonGoogleMicrosoftDynamic ProgrammingMedium🔒
- 83.K Closest Points to OriginAmazonGoogleMetaHeap / Priority QueueMedium🔒
- 84.Task SchedulerAmazonGoogleMicrosoftGreedyMedium🔒
- 85.Rotting OrangesAmazonGoogleMatrix TraversalMedium🔒
- 86.Sliding Window MaximumAmazonGoogleMetaMonotonic QueueHard🔒
- 87.Remove Nth Node From End of ListAmazonGoogleMicrosoftLinked ListMedium🔒
- 88.Merge K Sorted ListsAmazonGoogleMicrosoftK-Way MergeHard🔒
- 90.Gas StationAmazonGoogleGreedyMedium🔒
- 91.Number of Connected Components in an Undirected GraphAmazonGoogleLinkedInUnion-FindMedium🔒
- 92.First Missing PositiveAmazonGoogleMicrosoftCyclic SortHard🔒
- 93.Sort an ArrayGoogleAmazonSorting AlgorithmsMedium🔒
- 94.Range Sum Query - ImmutableAmazonGooglePrefix SumEasy🔒
- 95.Graph Valid TreeAmazonGoogleLinkedInUnion-FindMedium🔒
- 96.Redundant ConnectionGoogleAmazonUnion-FindMedium🔒
- 97.Maximum Sum Circular SubarrayAmazonGoogleKadane's AlgorithmMedium🔒
- 98.Valid SudokuAmazonGoogleAppleSetMedium🔒
- 99.Accounts MergeGoogleAmazonMetaUnion-FindMedium🔒
- 100.Word BreakAmazonGoogleMetaDynamic ProgrammingMedium🔒
- 101.Longest Increasing SubsequenceAmazonGoogleMicrosoftDynamic ProgrammingMedium🔒
- 102.Pacific Atlantic Water FlowGoogleAmazonGraph TraversalMedium🔒
- 103.Binary Tree Right Side ViewAmazonGoogleMetaTree TraversalMedium🔒
- 104.Balanced Binary TreeAmazonGoogleMicrosoftTree TraversalEasy🔒
- 105.Construct Binary Tree from Preorder and Inorder TraversalAmazonGoogleMicrosoftTree TraversalMedium🔒
- 106.Path Sum IIAmazonGoogleMicrosoftBacktrackingMedium🔒
- 107.Lowest Common Ancestor of a Binary TreeAmazonGoogleMetaTree TraversalMedium🔒
- 108.Combination SumAmazonGoogleMetaBacktrackingMedium🔒
- 109.House Robber IIAmazonGoogleDynamic ProgrammingMedium🔒
- 110.Partition Equal Subset SumAmazonGoogleDynamic ProgrammingMedium🔒
- 111.Generate ParenthesesAmazonGoogleMetaBacktrackingMedium🔒
- 112.Kth Smallest Element in a BSTAmazonGoogleTree TraversalMedium🔒
- 113.Validate Binary Search TreeAmazonGoogleBloombergTree TraversalMedium🔒
- 114.Reverse BitsAppleAmazonBit ManipulationEasy🔒
- 115.Number of 1 BitsAppleAmazonGoogleBit ManipulationEasy🔒
- 116.Counting BitsAmazonGoogleBit ManipulationEasy🔒
- 117.Meeting RoomsAmazonGoogleMetaGreedyEasy🔒
- 118.Meeting Rooms IIAmazonGoogleMetaGreedyMedium🔒
- 119.Target SumAmazonGoogleDynamic ProgrammingMedium🔒
- 120.Palindrome PartitioningAmazonGoogleBacktrackingMedium🔒
- 121.Longest Palindromic SubstringAmazonGoogleMicrosoftTwo PointersMedium🔒
- 122.Spiral MatrixAmazonGoogleMicrosoftMatrix TraversalMedium🔒
- 123.Set Matrix ZeroesAmazonGoogleMicrosoftMatrix TraversalMedium🔒
- 124.Search a 2D MatrixAmazonGoogleMicrosoftBinary SearchMedium🔒
- 125.Add Two NumbersAmazonGoogleMicrosoftLinked ListMedium🔒
- 126.Reorder ListAmazonGoogleLinked ListMedium🔒
- 127.Number of ProvincesAmazonGoogleGraph TraversalMedium🔒
- 128.Keys and RoomsAmazonGoogleGraph TraversalMedium🔒
- 129.Find Peak ElementGoogleAmazonMetaBinary SearchMedium🔒
- 130.Edit DistanceAmazonGoogleMicrosoftDynamic ProgrammingHard🔒
- 131.Running Sum of 1d ArrayAmazonGooglePrefix SumEasy🔒
- 132.Find All Numbers Disappeared in an ArrayAmazonGoogleCyclic SortEasy🔒
- 133.Intersection of Two ArraysAmazonGoogleMicrosoftSetEasy🔒
- 134.Jump Game VIAmazonGoogleMonotonic QueueMedium🔒
- 135.Find K Pairs with Smallest SumsAmazonGoogleMicrosoftHeap / Priority QueueMedium🔒
- 136.Minimum Window SubstringAmazonGoogleMetaSliding WindowHard🔒
- 137.Trapping Rain WaterAmazonGoogleMetaTwo PointersHard🔒
- 138.Implement Trie (Prefix Tree)AmazonGoogleMicrosoftTrieMedium🔒
- 139.Best Time to Buy and Sell Stock IIAmazonGoogleGreedyEasy🔒
- 140.Find Pivot IndexAmazonGooglePrefix SumEasy🔒
- 141.Word Break IIAmazonGoogleMemoizationHard🔒
- 142.Number of Islands IIGoogleAmazonMicrosoftUnion-FindHard🔒
- 143.Maximum Difference Between Increasing ElementsAmazonGoogleTracking MinimumEasy🔒
- 144.Minimum Path SumAmazonGoogleMicrosoftDynamic ProgrammingMedium🔒
- 145.Longest Common SubsequenceAmazonGoogleMicrosoftDynamic ProgrammingMedium🔒
- 146.Maximum Product of Word LengthsAmazonGoogleBit ManipulationMedium🔒
- 147.Single Number IIAmazonGoogleBit ManipulationMedium🔒
- 148.Rotate ImageAmazonGoogleMicrosoftMatrix TraversalMedium🔒
- 149.Surrounded RegionsAmazonGoogleMicrosoftGraph TraversalMedium🔒
- 150.Decode StringGoogleAmazonMicrosoftStackMedium🔒
- 151.Find All Duplicates in an ArrayAmazonGoogleCyclic SortMedium🔒
Founding Member Deal · Price locks in for life
Unlock 145 more problems
Your price is locked in for life. When the 100th founding spot closes, the price goes up for everyone who joins after.
Sliding WindowBinary SearchLinked ListKadane'sTree Traversal
$29per year · or $6/moLeetCode Premium is $159/year.
Cancel anytime. Not useful within 7 days? Email for a full refund. Secured by Stripe.