Array LeetCode Problems: All 1,569, With Python Solutions

Every problem in this library that LeetCode tags Array 1,569 in total, 1,332 of them with a complete Python solution, a worked example and the time and space complexity of the approach.

  • 1,569 problems
  • 330 Easy
  • 862 Medium
  • 377 Hard

Array problems by difficulty

Showing the first 200 of 1,569 problems. Problems with a complete Python solution are listed first, then by ascending problem number.

Easy (31)

#ProblemDifficultyTopics
1Two SumEasyArray, Hash Table
14Longest Common PrefixEasyTrie, Array, String
26Remove Duplicates from Sorted ArrayEasyArray, Two Pointers
27Remove ElementEasyArray, Two Pointers
35Search Insert PositionEasyArray, Binary Search
66Plus OneEasyArray, Math
88Merge Sorted ArrayEasyArray, Two Pointers, Sorting
108Convert Sorted Array to Binary Search TreeEasyTree, Binary Search Tree, Array +2
118Pascal's TriangleEasyArray, Dynamic Programming
119Pascal's Triangle IIEasyArray, Dynamic Programming
121Best Time to Buy and Sell StockEasyArray, Dynamic Programming
136Single NumberEasyBit Manipulation, Array
169Majority ElementEasyArray, Hash Table, Divide and Conquer +2
217Contains DuplicateEasyArray, Hash Table, Sorting
219Contains Duplicate IIEasyArray, Hash Table, Sliding Window
228Summary RangesEasyArray
268Missing NumberEasyBit Manipulation, Array, Hash Table +3
283Move ZeroesEasyArray, Two Pointers
303Range Sum Query - ImmutableEasyDesign, Array, Prefix Sum
349Intersection of Two ArraysEasyArray, Hash Table, Two Pointers +2
350Intersection of Two Arrays IIEasyArray, Hash Table, Two Pointers +2
414Third Maximum NumberEasyArray, Sorting
448Find All Numbers Disappeared in an ArrayEasyArray, Hash Table
455Assign CookiesEasyGreedy, Array, Two Pointers +1
463Island PerimeterEasyDepth-First Search, Breadth-First Search, Array +1
485Max Consecutive OnesEasyArray
495Teemo AttackingEasyArray, Simulation
496Next Greater Element IEasyStack, Array, Hash Table +1
500Keyboard RowEasyArray, Hash Table, String
506Relative RanksEasyArray, Sorting, Heap (Priority Queue)
561Array PartitionEasyGreedy, Array, Counting Sort +1

Medium (128)

#ProblemDifficultyTopics
11Container With Most WaterMediumGreedy, Array, Two Pointers
153SumMediumArray, Two Pointers, Sorting
163Sum ClosestMediumArray, Two Pointers, Sorting
184SumMediumArray, Two Pointers, Sorting
31Next PermutationMediumArray, Two Pointers
33Search in Rotated Sorted ArrayMediumArray, Binary Search
34Find First and Last Position of Element in Sorted ArrayMediumArray, Binary Search
36Valid SudokuMediumArray, Hash Table, Matrix
39Combination SumMediumArray, Backtracking
40Combination Sum IIMediumArray, Backtracking
45Jump Game IIMediumGreedy, Array, Dynamic Programming
46PermutationsMediumArray, Backtracking
47Permutations IIMediumArray, Backtracking, Sorting
48Rotate ImageMediumArray, Math, Matrix
49Group AnagramsMediumArray, Hash Table, String +1
53Maximum SubarrayMediumArray, Divide and Conquer, Dynamic Programming
54Spiral MatrixMediumArray, Matrix, Simulation
55Jump GameMediumGreedy, Array, Dynamic Programming
56Merge IntervalsMediumArray, Sorting
57Insert IntervalMediumArray
59Spiral Matrix IIMediumArray, Matrix, Simulation
63Unique Paths IIMediumArray, Dynamic Programming, Matrix
64Minimum Path SumMediumArray, Dynamic Programming, Matrix
73Set Matrix ZeroesMediumArray, Hash Table, Matrix
74Search a 2D MatrixMediumArray, Binary Search, Matrix
75Sort ColorsMediumArray, Two Pointers, Sorting
78SubsetsMediumBit Manipulation, Array, Backtracking
79Word SearchMediumDepth-First Search, Array, String +2
80Remove Duplicates from Sorted Array IIMediumArray, Two Pointers
81Search in Rotated Sorted Array IIMediumArray, Binary Search
90Subsets IIMediumBit Manipulation, Array, Backtracking
105Construct Binary Tree from Preorder and Inorder TraversalMediumTree, Array, Hash Table +2
106Construct Binary Tree from Inorder and Postorder TraversalMediumTree, Array, Hash Table +2
120TriangleMediumArray, Dynamic Programming
122Best Time to Buy and Sell Stock IIMediumGreedy, Array, Dynamic Programming
128Longest Consecutive SequenceMediumUnion Find, Array, Hash Table
130Surrounded RegionsMediumDepth-First Search, Breadth-First Search, Union Find +2
134Gas StationMediumGreedy, Array
137Single Number IIMediumBit Manipulation, Array
139Word BreakMediumTrie, Memoization, Array +3
150Evaluate Reverse Polish NotationMediumStack, Array, Math
152Maximum Product SubarrayMediumArray, Dynamic Programming
153Find Minimum in Rotated Sorted ArrayMediumArray, Binary Search
162Find Peak ElementMediumArray, Binary Search
164Maximum GapMediumArray, Bucket Sort, Radix Sort +1
167Two Sum II - Input Array Is SortedMediumArray, Two Pointers, Binary Search
179Largest NumberMediumGreedy, Array, String +1
189Rotate ArrayMediumArray, Math, Two Pointers
198House RobberMediumArray, Dynamic Programming
200Number of IslandsMediumDepth-First Search, Breadth-First Search, Union Find +2
204Count PrimesMediumArray, Math, Enumeration +1
209Minimum Size Subarray SumMediumArray, Binary Search, Prefix Sum +1
213House Robber IIMediumArray, Dynamic Programming
215Kth Largest Element in an ArrayMediumArray, Divide and Conquer, Quickselect +2
216Combination Sum IIIMediumArray, Backtracking
221Maximal SquareMediumArray, Dynamic Programming, Matrix
229Majority Element IIMediumArray, Hash Table, Counting +1
238Product of Array Except SelfMediumArray, Prefix Sum
240Search a 2D Matrix IIMediumArray, Binary Search, Divide and Conquer +1
260Single Number IIIMediumBit Manipulation, Array
274H-IndexMediumArray, Counting Sort, Sorting
275H-Index IIMediumArray, Binary Search
284Peeking IteratorMediumDesign, Array, Iterator
287Find the Duplicate NumberMediumBit Manipulation, Array, Two Pointers +1
289Game of LifeMediumArray, Matrix, Simulation
300Longest Increasing SubsequenceMediumArray, Binary Search, Dynamic Programming
304Range Sum Query 2D - ImmutableMediumDesign, Array, Matrix +1
307Range Sum Query - MutableMediumDesign, Binary Indexed Tree, Segment Tree +2
309Best Time to Buy and Sell Stock with CooldownMediumArray, Dynamic Programming
313Super Ugly NumberMediumArray, Math, Dynamic Programming
318Maximum Product of Word LengthsMediumBit Manipulation, Array, String
322Coin ChangeMediumBreadth-First Search, Array, Dynamic Programming
324Wiggle Sort IIMediumGreedy, Array, Divide and Conquer +2
334Increasing Triplet SubsequenceMediumGreedy, Array
347Top K Frequent ElementsMediumArray, Hash Table, Divide and Conquer +5
368Largest Divisible SubsetMediumArray, Math, Dynamic Programming +1
373Find K Pairs with Smallest SumsMediumArray, Heap (Priority Queue)
376Wiggle SubsequenceMediumGreedy, Array, Dynamic Programming
377Combination Sum IVMediumArray, Dynamic Programming
378Kth Smallest Element in a Sorted MatrixMediumArray, Binary Search, Matrix +2
380Insert Delete GetRandom O(1)MediumDesign, Array, Hash Table +2
384Shuffle an ArrayMediumDesign, Array, Math +1
393UTF-8 ValidationMediumBit Manipulation, Array
396Rotate FunctionMediumArray, Math, Dynamic Programming
399Evaluate DivisionMediumDepth-First Search, Breadth-First Search, Union Find +4
406Queue Reconstruction by HeightMediumBinary Indexed Tree, Segment Tree, Array +1
413Arithmetic SlicesMediumArray, Dynamic Programming, Sliding Window
416Partition Equal Subset SumMediumArray, Dynamic Programming
417Pacific Atlantic Water FlowMediumDepth-First Search, Breadth-First Search, Array +1
419Battleships in a BoardMediumDepth-First Search, Array, Matrix
421Maximum XOR of Two Numbers in an ArrayMediumBit Manipulation, Trie, Array +1
427Construct Quad TreeMediumTree, Array, Divide and Conquer +1
435Non-overlapping IntervalsMediumGreedy, Array, Dynamic Programming +1
436Find Right IntervalMediumArray, Binary Search, Sorting
442Find All Duplicates in an ArrayMediumArray, Hash Table, Sorting
447Number of BoomerangsMediumArray, Hash Table, Math
452Minimum Number of Arrows to Burst BalloonsMediumGreedy, Array, Sorting
453Minimum Moves to Equal Array ElementsMediumArray, Math
4544Sum IIMediumArray, Hash Table
456132 PatternMediumStack, Array, Binary Search +2
457Circular Array LoopMediumArray, Hash Table, Two Pointers
462Minimum Moves to Equal Array Elements IIMediumArray, Math, Sorting
473Matchsticks to SquareMediumBit Manipulation, Array, Dynamic Programming +2
474Ones and ZeroesMediumArray, String, Dynamic Programming
475HeatersMediumArray, Two Pointers, Binary Search +1
477Total Hamming DistanceMediumBit Manipulation, Array, Math
486Predict the WinnerMediumRecursion, Array, Math +2
491Non-decreasing SubsequencesMediumBit Manipulation, Array, Hash Table +1
494Target SumMediumArray, Dynamic Programming, Backtracking
497Random Point in Non-overlapping RectanglesMediumReservoir Sampling, Array, Math +4
498Diagonal TraverseMediumArray, Matrix, Simulation
503Next Greater Element IIMediumStack, Array, Monotonic Stack
518Coin Change IIMediumArray, Dynamic Programming
522Longest Uncommon Subsequence IIMediumArray, Hash Table, Two Pointers +2
523Continuous Subarray SumMediumArray, Hash Table, Math +1
524Longest Word in Dictionary through DeletingMediumArray, Two Pointers, String +1
525Contiguous ArrayMediumArray, Hash Table, Prefix Sum
526Beautiful ArrangementMediumBit Manipulation, Array, Dynamic Programming +2
528Random Pick with WeightMediumArray, Math, Binary Search +2
529MinesweeperMediumDepth-First Search, Breadth-First Search, Array +1
532K-diff Pairs in an ArrayMediumArray, Hash Table, Two Pointers +2
539Minimum Time DifferenceMediumArray, Math, String +1
540Single Element in a Sorted ArrayMediumArray, Binary Search
54201 MatrixMediumBreadth-First Search, Array, Dynamic Programming +1
553Optimal DivisionMediumArray, Math, Dynamic Programming
554Brick WallMediumArray, Hash Table
560Subarray Sum Equals KMediumArray, Hash Table, Prefix Sum
565Array NestingMediumDepth-First Search, Array

Hard (41)

#ProblemDifficultyTopics
4Median of Two Sorted ArraysHardArray, Binary Search, Divide and Conquer
37Sudoku SolverHardArray, Hash Table, Backtracking +1
41First Missing PositiveHardArray, Hash Table
42Trapping Rain WaterHardStack, Array, Two Pointers +2
51N-QueensHardArray, Backtracking
68Text JustificationHardArray, String, Simulation
84Largest Rectangle in HistogramHardStack, Array, Monotonic Stack
85Maximal RectangleHardStack, Array, Dynamic Programming +2
123Best Time to Buy and Sell Stock IIIHardArray, Dynamic Programming
135CandyHardGreedy, Array
140Word Break IIHardTrie, Memoization, Array +4
149Max Points on a LineHardGeometry, Array, Hash Table +1
154Find Minimum in Rotated Sorted Array IIHardArray, Binary Search
174Dungeon GameHardArray, Dynamic Programming, Matrix
188Best Time to Buy and Sell Stock IVHardArray, Dynamic Programming
212Word Search IIHardTrie, Array, String +2
218The Skyline ProblemHardBinary Indexed Tree, Segment Tree, Array +5
220Contains Duplicate IIIHardArray, Bucket Sort, Ordered Set +2
239Sliding Window MaximumHardQueue, Array, Sliding Window +2
312Burst BalloonsHardArray, Dynamic Programming
315Count of Smaller Numbers After SelfHardBinary Indexed Tree, Segment Tree, Array +4
321Create Maximum NumberHardStack, Greedy, Array +2
327Count of Range SumHardBinary Indexed Tree, Segment Tree, Array +4
329Longest Increasing Path in a MatrixHardDepth-First Search, Breadth-First Search, Graph +5
330Patching ArrayHardGreedy, Array
335Self CrossingHardGeometry, Array, Math
336Palindrome PairsHardTrie, Array, Hash Table +1
354Russian Doll EnvelopesHardArray, Binary Search, Dynamic Programming +1
363Max Sum of Rectangle No Larger Than KHardArray, Binary Search, Matrix +2
381Insert Delete GetRandom O(1) - Duplicates allowedHardDesign, Array, Hash Table +2
391Perfect RectangleHardGeometry, Array, Hash Table +2
403Frog JumpHardArray, Dynamic Programming
407Trapping Rain Water IIHardBreadth-First Search, Array, Matrix +1
410Split Array Largest SumHardGreedy, Array, Binary Search +2
446Arithmetic Slices II - SubsequenceHardArray, Dynamic Programming
472Concatenated WordsHardDepth-First Search, Trie, Array +3
480Sliding Window MedianHardArray, Hash Table, Sliding Window +1
493Reverse PairsHardBinary Indexed Tree, Segment Tree, Array +4
502IPOHardGreedy, Array, Sorting +1
517Super Washing MachinesHardGreedy, Array
546Remove BoxesHardMemoization, Array, Dynamic Programming

When the Array problem arrives live

Stealth Interview is a desktop app for macOS and Windows. It reads the coding problem off your screen, returns a working solution with a step-by-step explanation and its time and space complexity, and transcribes what the interviewer is saying — while staying invisible to screen sharing.