Adobe LeetCode Questions
148 questions all-time · 34 easy · 93 medium · 21 hard
| # | Problem | Difficulty | Frequency | Acceptance |
|---|---|---|---|---|
| 1 | Two Sum Array, Hash Table | Easy | 100 | 0.6% |
| 2 | Longest Substring Without Repeating Characters Hash Table, String, Sliding Window | Medium | 92 | 0.4% |
| 3 | Group Anagrams Array, Hash Table, String, Sorting | Medium | 92 | 0.7% |
| 4 | Majority Element Array, Hash Table, Divide and Conquer, Sorting, Counting | Easy | 92 | 0.7% |
| 5 | Special Binary String String, Divide and Conquer, Sorting | Hard | 92 | 0.8% |
| 6 | Add Two Numbers Linked List, Math, Recursion | Medium | 91 | 0.5% |
| 7 | Median of Two Sorted Arrays Array, Binary Search, Divide and Conquer | Hard | 91 | 0.5% |
| 8 | 3Sum Array, Two Pointers, Sorting | Medium | 87 | 0.4% |
| 9 | Climbing Stairs Math, Dynamic Programming, Memoization | Easy | 87 | 0.5% |
| 10 | Reverse Linked List Linked List, Recursion | Easy | 87 | 0.8% |
| 11 | Smallest Range II Array, Math, Greedy, Sorting | Medium | 87 | 0.4% |
| 12 | Merge Intervals Array, Sorting | Medium | 84 | 0.5% |
| 13 | Nim Game Math, Brainteaser, Game Theory | Easy | 84 | 0.6% |
| 14 | Number of Increasing Paths in a Grid Array, Dynamic Programming, Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Memoization, Matrix | Hard | 84 | 0.6% |
| 15 | Divide Intervals Into Minimum Number of Groups Array, Two Pointers, Greedy, Sorting, Heap (Priority Queue), Prefix Sum | Medium | 84 | 0.6% |
| 16 | LRU Cache Hash Table, Linked List, Design, Doubly-Linked List | Medium | 82 | 0.5% |
| 17 | Tenth Line Shell | Easy | 82 | 0.4% |
| 18 | Delete Node in a Linked List Linked List | Medium | 82 | 0.8% |
| 19 | Add Digits Math, Simulation, Number Theory | Easy | 82 | 0.7% |
| 20 | Kth Largest Element in a Stream Tree, Design, Binary Search Tree, Heap (Priority Queue), Binary Tree, Data Stream | Easy | 82 | 0.6% |
| 21 | Preimage Size of Factorial Zeroes Function Math, Binary Search | Hard | 82 | 0.5% |
| 22 | Number of Subarrays with Bounded Maximum Array, Two Pointers | Medium | 82 | 0.6% |
| 23 | Smallest Range I Array, Math | Easy | 82 | 0.7% |
| 24 | Reverse Substrings Between Each Pair of Parentheses String, Stack | Medium | 82 | 0.7% |
| 25 | Count Ways to Build Rooms in an Ant Colony Array, Math, Dynamic Programming, Tree, Depth-First Search, Graph Theory, Topological Sort, Combinatorics | Hard | 82 | 0.5% |
| 26 | Plates Between Candles Array, String, Binary Search, Prefix Sum | Medium | 82 | 0.5% |
| 27 | Choose Numbers From Two Arrays in Range Array, Dynamic Programming | Hard | 82 | 0.5% |
| 28 | Minimize XOR Greedy, Bit Manipulation | Medium | 82 | 0.6% |
| 29 | Merge Operations to Turn Array Into a Palindrome Array, Two Pointers, Greedy | Medium | 82 | 0.7% |
| 30 | Minimizing Array After Replacing Pairs With Their Product Array, Dynamic Programming, Greedy | Medium | 82 | 0.4% |
| 31 | Count Subarrays Where Max Element Appears at Least K Times Array, Sliding Window | Medium | 82 | 0.6% |
| 32 | Bitwise OR of Adjacent Elements Array, Bit Manipulation | Easy | 82 | 0.9% |
| 33 | Number of Islands Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Medium | 79 | 0.6% |
| 34 | Minimum Window Substring Hash Table, String, Sliding Window | Hard | 76 | 0.5% |
| 35 | Threshold Majority Queries Array, Hash Table, Binary Search, Divide and Conquer, Counting, Prefix Sum | Hard | 76 | 0.2% |
| 36 | Minimum Moves to Equal Array Elements III Array, Math | Easy | 76 | 0.8% |
| 37 | Integer to Roman Hash Table, Math, String | Medium | 72 | 0.7% |
| 38 | Next Permutation Array, Two Pointers | Medium | 72 | 0.5% |
| 39 | Trapping Rain Water Array, Two Pointers, Dynamic Programming, Stack, Monotonic Stack | Hard | 72 | 0.7% |
| 40 | Jump Game Array, Dynamic Programming, Greedy | Medium | 72 | 0.4% |
| 41 | Best Time to Buy and Sell Stock Array, Dynamic Programming | Easy | 72 | 0.6% |
| 42 | Validate IP Address String | Medium | 72 | 0.3% |
| 43 | Longest Palindromic Substring Two Pointers, String, Dynamic Programming | Medium | 68 | 0.4% |
| 44 | Longest Common Prefix Array, String, Trie | Easy | 68 | 0.5% |
| 45 | Valid Parentheses String, Stack | Easy | 68 | 0.4% |
| 46 | Maximum Product Subarray Array, Dynamic Programming | Medium | 68 | 0.4% |
| 47 | Sort Array by Increasing Frequency Array, Hash Table, Sorting | Easy | 68 | 0.8% |
| 48 | Spiral Matrix Array, Matrix, Simulation | Medium | 64 | 0.6% |
| 49 | Restore IP Addresses String, Backtracking | Medium | 64 | 0.6% |
| 50 | Gas Station Array, Greedy | Medium | 64 | 0.5% |
| 51 | Largest Number Array, String, Greedy, Sorting | Medium | 64 | 0.4% |
| 52 | Lowest Common Ancestor of a Binary Tree Tree, Depth-First Search, Binary Tree | Medium | 64 | 0.7% |
| 53 | Coin Change Array, Dynamic Programming, Breadth-First Search | Medium | 64 | 0.5% |
| 54 | Top K Frequent Elements Array, Hash Table, Divide and Conquer, Sorting, Heap (Priority Queue), Bucket Sort, Counting, Quickselect | Medium | 64 | 0.7% |
| 55 | Koko Eating Bananas Array, Binary Search | Medium | 64 | 0.5% |
| 56 | Fruit Into Baskets Array, Hash Table, Sliding Window | Medium | 64 | 0.5% |
| 57 | Minimum Processing Time Array, Greedy, Sorting | Medium | 64 | 0.7% |
| 58 | Top K Frequent Words Array, Hash Table, String, Trie, Sorting, Heap (Priority Queue), Bucket Sort, Counting | Medium | 64 | 0.6% |
| 59 | String to Integer (atoi) String | Medium | 58 | 0.2% |
| 60 | Roman to Integer Hash Table, Math, String | Easy | 58 | 0.7% |
| 61 | Search in Rotated Sorted Array Array, Binary Search | Medium | 58 | 0.5% |
| 62 | Search a 2D Matrix Array, Binary Search, Matrix | Medium | 58 | 0.5% |
| 63 | Binary Tree Zigzag Level Order Traversal Tree, Breadth-First Search, Binary Tree | Medium | 58 | 0.6% |
| 64 | Remove K Digits String, Stack, Greedy, Monotonic Stack | Medium | 58 | 0.4% |
| 65 | Rotting Oranges Array, Breadth-First Search, Matrix | Medium | 58 | 0.6% |
| 66 | Count Pairs Of Similar Strings Array, Hash Table, String, Bit Manipulation, Counting | Easy | 58 | 0.7% |
| 67 | Shortest Path in a Grid with Obstacles Elimination Array, Breadth-First Search, Matrix | Hard | 58 | 0.5% |
| 68 | Binary Tree Maximum Path Sum Dynamic Programming, Tree, Depth-First Search, Binary Tree | Hard | 58 | 0.4% |
| 69 | Reverse Integer Math | Medium | 50 | 0.3% |
| 70 | Generate Parentheses String, Dynamic Programming, Backtracking | Medium | 50 | 0.8% |
| 71 | Remove Element Array, Two Pointers | Easy | 50 | 0.6% |
| 72 | Jump Game II Array, Dynamic Programming, Greedy | Medium | 50 | 0.4% |
| 73 | Rotate Image Array, Math, Matrix | Medium | 50 | 0.8% |
| 74 | N-Queens Array, Backtracking | Hard | 50 | 0.8% |
| 75 | Binary Tree Level Order Traversal Tree, Breadth-First Search, Binary Tree | Medium | 50 | 0.7% |
| 76 | Construct Binary Tree from Preorder and Inorder Traversal Array, Hash Table, Divide and Conquer, Tree, Binary Tree | Medium | 50 | 0.7% |
| 77 | Longest Consecutive Sequence Array, Hash Table, Union-Find | Medium | 50 | 0.5% |
| 78 | Single Number Array, Bit Manipulation | Easy | 50 | 0.8% |
| 79 | House Robber Array, Dynamic Programming | Medium | 50 | 0.5% |
| 80 | Basic Calculator II Math, String, Stack | Medium | 50 | 0.5% |
| 81 | Product of Array Except Self Array, Prefix Sum | Medium | 50 | 0.7% |
| 82 | Sliding Window Maximum Array, Queue, Sliding Window, Heap (Priority Queue), Monotonic Queue | Hard | 50 | 0.5% |
| 83 | Meeting Rooms II Array, Two Pointers, Greedy, Sorting, Heap (Priority Queue), Prefix Sum | Medium | 50 | 0.5% |
| 84 | Number of Provinces Depth-First Search, Breadth-First Search, Union-Find, Graph Theory | Medium | 50 | 0.7% |
| 85 | Sum of All Subset XOR Totals Array, Math, Backtracking, Bit Manipulation, Combinatorics, Enumeration | Easy | 50 | 0.9% |
| 86 | Amount of Time for Binary Tree to Be Infected Hash Table, Tree, Depth-First Search, Breadth-First Search, Binary Tree | Medium | 50 | 0.7% |
| 87 | Shopping Offers Array, Dynamic Programming, Backtracking, Bit Manipulation, Memoization, Bitmask | Medium | 50 | 0.5% |
| 88 | Longest Increasing Path in a Matrix Array, Dynamic Programming, Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort, Memoization, Matrix | Hard | 50 | 0.6% |
| 89 | Unit Conversion I Depth-First Search, Breadth-First Search, Graph Theory | Medium | 50 | 0.5% |
| 90 | Nested List Weight Sum Depth-First Search, Breadth-First Search | Medium | 50 | 0.9% |
| 91 | Contains Duplicate II Array, Hash Table, Sliding Window | Easy | 50 | 0.5% |
| 92 | Is Subsequence Two Pointers, String, Dynamic Programming | Easy | 50 | 0.5% |
| 93 | Heaters Array, Two Pointers, Binary Search, Sorting | Medium | 50 | 0.4% |
| 94 | Minimum Cost For Tickets Array, Dynamic Programming | Medium | 50 | 0.7% |
| 95 | Game of Life Array, Matrix, Simulation | Medium | 50 | 0.7% |
| 96 | Flatten Nested List Iterator Stack, Tree, Depth-First Search, Design, Queue, Iterator | Medium | 50 | 0.7% |
| 97 | Container With Most Water Array, Two Pointers, Greedy | Medium | 40 | 0.6% |
| 98 | Reverse Nodes in k-Group Linked List, Recursion | Hard | 40 | 0.7% |
| 99 | Combination Sum II Array, Backtracking | Medium | 40 | 0.6% |
| 100 | Pow(x, n) Math, Recursion | Medium | 40 | 0.4% |
| 101 | Largest Rectangle in Histogram Array, Stack, Monotonic Stack | Hard | 40 | 0.5% |
| 102 | Decode Ways String, Dynamic Programming | Medium | 40 | 0.4% |
| 103 | Valid Palindrome Two Pointers, String | Easy | 40 | 0.5% |
| 104 | Word Ladder Hash Table, String, Breadth-First Search | Hard | 40 | 0.5% |
| 105 | Surrounded Regions Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Medium | 40 | 0.5% |
| 106 | Min Stack Stack, Design | Medium | 40 | 0.6% |
| 107 | Two Sum II - Input Array Is Sorted Array, Two Pointers, Binary Search | Medium | 40 | 0.7% |
| 108 | Binary Search Tree Iterator Stack, Tree, Design, Binary Search Tree, Binary Tree, Iterator | Medium | 40 | 0.8% |
| 109 | Course Schedule Depth-First Search, Breadth-First Search, Graph Theory, Topological Sort | Medium | 40 | 0.5% |
| 110 | Kth Largest Element in an Array Array, Divide and Conquer, Sorting, Heap (Priority Queue), Quickselect | Medium | 40 | 0.7% |
| 111 | Missing Number Array, Hash Table, Math, Binary Search, Bit Manipulation, Sorting | Easy | 40 | 0.7% |
| 112 | Move Zeroes Array, Two Pointers | Easy | 40 | 0.6% |
| 113 | Pacific Atlantic Water Flow Array, Depth-First Search, Breadth-First Search, Matrix | Medium | 40 | 0.6% |
| 114 | Longest Repeating Character Replacement Hash Table, String, Sliding Window | Medium | 40 | 0.6% |
| 115 | Single Element in a Sorted Array Array, Binary Search | Medium | 40 | 0.6% |
| 116 | 01 Matrix Array, Dynamic Programming, Breadth-First Search, Matrix | Medium | 40 | 0.5% |
| 117 | Next Greater Element III Math, Two Pointers, String | Medium | 40 | 0.4% |
| 118 | Subarray Sum Equals K Array, Hash Table, Prefix Sum | Medium | 40 | 0.5% |
| 119 | Permutation in String Hash Table, Two Pointers, String, Sliding Window | Medium | 40 | 0.5% |
| 120 | Shortest Path to Get All Keys Array, Bit Manipulation, Breadth-First Search, Matrix | Hard | 40 | 0.5% |
| 121 | Random Pick with Weight Array, Math, Binary Search, Prefix Sum, Randomized | Medium | 40 | 0.5% |
| 122 | Squares of a Sorted Array Array, Two Pointers, Sorting | Easy | 40 | 0.7% |
| 123 | Cousins in Binary Tree Tree, Depth-First Search, Breadth-First Search, Binary Tree | Easy | 40 | 0.6% |
| 124 | Search Suggestions System Array, String, Binary Search, Trie, Sorting, Heap (Priority Queue) | Medium | 40 | 0.7% |
| 125 | Customer Who Visited but Did Not Make Any Transactions Database | Easy | 40 | 0.7% |
| 126 | To Be Or Not To Be | Easy | 40 | 0.6% |
| 127 | Minimum Swaps to Group All 1's Together II Array, Sliding Window | Medium | 40 | 0.7% |
| 128 | Basic Calculator Math, String, Stack, Recursion | Hard | 40 | 0.5% |
| 129 | Range Sum Query - Mutable Array, Divide and Conquer, Design, Binary Indexed Tree, Segment Tree | Medium | 40 | 0.4% |
| 130 | Contiguous Array Array, Hash Table, Prefix Sum | Medium | 40 | 0.5% |
| 131 | Split the Array Array, Hash Table, Counting | Easy | 40 | 0.6% |
| 132 | Design Twitter Hash Table, Linked List, Design, Heap (Priority Queue) | Medium | 40 | 0.4% |
| 133 | Increment Submatrices by One Array, Matrix, Prefix Sum | Medium | 40 | 0.7% |
| 134 | Max Consecutive Ones III Array, Binary Search, Sliding Window, Prefix Sum | Medium | 40 | 0.7% |
| 135 | Count Complete Tree Nodes Binary Search, Bit Manipulation, Tree, Binary Tree | Easy | 40 | 0.7% |
| 136 | Trim a Binary Search Tree Tree, Depth-First Search, Binary Search Tree, Binary Tree | Medium | 40 | 0.7% |
| 137 | Largest Combination With Bitwise AND Greater Than Zero Array, Hash Table, Bit Manipulation, Counting | Medium | 40 | 0.8% |
| 138 | Boundary of Binary Tree Tree, Depth-First Search, Binary Tree | Medium | 40 | 0.5% |
| 139 | Reformat Date String | Easy | 40 | 0.7% |
| 140 | Minimum Number of Swaps to Make the String Balanced Two Pointers, String, Stack, Greedy | Medium | 40 | 0.8% |
| 141 | Maximum Profit From Trading Stocks Array, Dynamic Programming | Medium | 40 | 0.5% |
| 142 | Reconstruct Itinerary Array, String, Depth-First Search, Graph Theory, Sorting, Heap (Priority Queue), Eulerian Circuit | Hard | 40 | 0.4% |
| 143 | Find the Difference of Two Arrays Array, Hash Table | Easy | 40 | 0.8% |
| 144 | Add Binary Math, String, Bit Manipulation, Simulation | Easy | 40 | 0.6% |
| 145 | Minimum Number of Days to Make m Bouquets Array, Binary Search | Medium | 40 | 0.6% |
| 146 | Spiral Matrix II Array, Matrix, Simulation | Medium | 40 | 0.8% |
| 147 | Minimum Number of Taps to Open to Water a Garden Array, Dynamic Programming, Greedy | Hard | 40 | 0.5% |
| 148 | Max Area of Island Array, Depth-First Search, Breadth-First Search, Union-Find, Matrix | Medium | 40 | 0.7% |
How to read this list
The tabs at the top split the questions by how recently people said they were asked in interviews. "Last 30 Days" is the past month, "Last 3 Months" is the past quarter, and so on. "All Time" is every question on record for this company.
Frequency is a score from 0 to 100 for how often a question showed up in that time window. A higher number means it came up more often, so the list starts with the most common questions first. Acceptance is the share of submissions that pass on LeetCode. Click any question to open it on LeetCode.