1 Majority Element Arrays Easy – 1 2 3 4 5 2 Find Pivot Index Arrays Easy – 1 2 3 4 5 3 Product of Array Except Self Arrays Medium – 1 2 3 4 5 4 Subarray Sum Equals K Arrays Medium – 1 2 3 4 5 5 Subarray Sums Divisible by K Arrays Medium – 1 2 3 4 5 6 Contiguous Array Arrays Medium – 1 2 3 4 5 7 Shortest Subarray with Sum at Least K Arrays Hard – 1 2 3 4 5 8 Maximum Subarray Arrays Medium – 1 2 3 4 5 9 Maximum Product Subarray Arrays Medium – 1 2 3 4 5 10 Maximum Subarray Sum with One Deletion Arrays Medium – 1 2 3 4 5 11 Maximum Absolute Sum of Any Subarray Arrays Medium – 1 2 3 4 5 12 Maximum Sum Circular Subarray Arrays Medium – 1 2 3 4 5 13 Rotate Image Arrays Medium – 1 2 3 4 5 14 Spiral Matrix Arrays Medium – 1 2 3 4 5 15 Set Matrix Zeroes Arrays Medium – 1 2 3 4 5 16 Missing Number Arrays Easy – 1 2 3 4 5 17 Find All Numbers Disappeared in an Array Arrays Easy – 1 2 3 4 5 18 Set Mismatch Arrays Easy – 1 2 3 4 5 19 Find All Duplicates in an Array Arrays Medium – 1 2 3 4 5 20 First Missing Positive Arrays Hard – 1 2 3 4 5 21 Contains Duplicate Hashing Easy – 1 2 3 4 5 22 Valid Anagram Hashing Easy – 1 2 3 4 5 23 Two Sum Hashing Easy – 1 2 3 4 5 24 First Unique Character in a String Hashing Easy – 1 2 3 4 5 25 Longest Palindrome Hashing Easy – 1 2 3 4 5 26 Ransom Note Hashing Easy – 1 2 3 4 5 27 Valid Sudoku Hashing Medium – 1 2 3 4 5 28 Group Anagrams Hashing Medium – 1 2 3 4 5 29 Longest Consecutive Sequence Hashing Medium – 1 2 3 4 5 30 Longest Common Prefix Strings Easy – 1 2 3 4 5 31 Reverse String Strings Easy – 1 2 3 4 5 32 Encode and Decode Strings Strings Medium – 1 2 3 4 5 33 String to Integer (atoi) Strings Medium – 1 2 3 4 5 34 Number of 1 Bits Bit Manipulation Easy – 1 2 3 4 5 35 Reverse Bits Bit Manipulation Easy – 1 2 3 4 5 36 Single Number Bit Manipulation Easy – 1 2 3 4 5 37 Counting Bits Bit Manipulation Easy – 1 2 3 4 5 38 Complement of Base 10 Integer Bit Manipulation Easy – 1 2 3 4 5 39 Sum of Two Integers Bit Manipulation Medium – 1 2 3 4 5 40 Single Number III Bit Manipulation Medium – 1 2 3 4 5 41 Valid Palindrome II Two Pointers Easy – 1 2 3 4 5 42 Valid Palindrome Two Pointers Easy – 1 2 3 4 5 43 Move Zeroes Two Pointers Easy – 1 2 3 4 5 44 Remove Duplicates from Sorted Array Two Pointers Easy – 1 2 3 4 5 45 Squares of a Sorted Array Two Pointers Easy – 1 2 3 4 5 46 Segregate 0s and 1s Two Pointers Easy – 1 2 3 4 5 47 Backspace String Compare Two Pointers Easy – 1 2 3 4 5 48 Two Sum II Input Array Is Sorted Two Pointers Medium – 1 2 3 4 5 49 3Sum Two Pointers Medium – 1 2 3 4 5 50 Container With Most Water Two Pointers Medium – 1 2 3 4 5 51 Sort Colors Two Pointers Medium – 1 2 3 4 5 52 3Sum Closest Two Pointers Medium – 1 2 3 4 5 53 Triplets with Smaller Sum Two Pointers Medium – 1 2 3 4 5 54 Subarray Product Less Than K Two Pointers Medium – 1 2 3 4 5 55 4Sum Two Pointers Medium – 1 2 3 4 5 56 Shortest Unsorted Continuous Subarray Two Pointers Medium – 1 2 3 4 5 57 Trapping Rain Water Two Pointers Hard – 1 2 3 4 5 58 Implement Stack using Queues Queue Easy – 1 2 3 4 5 59 Implement Queue using Stacks Queue Easy – 1 2 3 4 5 60 Number of Recent Calls Queue Easy – 1 2 3 4 5 61 Design Circular Queue Queue Medium – 1 2 3 4 5 62 Best Time to Buy and Sell Stock Sliding Window Easy – 1 2 3 4 5 63 Maximum Average Subarray I Sliding Window Easy – 1 2 3 4 5 64 Max Sum Subarray of Size K Sliding Window Easy – 1 2 3 4 5 65 Longest Substring Without Repeating Characters Sliding Window Medium – 1 2 3 4 5 66 Longest Repeating Character Replacement Sliding Window Medium – 1 2 3 4 5 67 Permutation in String Sliding Window Medium – 1 2 3 4 5 68 Minimum Size Subarray Sum Sliding Window Medium – 1 2 3 4 5 69 Longest K unique characters substring Sliding Window Medium – 1 2 3 4 5 70 Fruit Into Baskets Sliding Window Medium – 1 2 3 4 5 71 Max Consecutive Ones III Sliding Window Medium – 1 2 3 4 5 72 Find All Anagrams in a String Sliding Window Medium – 1 2 3 4 5 73 Minimum Window Substring Sliding Window Hard – 1 2 3 4 5 74 Sliding Window Maximum Sliding Window Hard – 1 2 3 4 5 75 Substring with Concatenation of All Words Sliding Window Hard – 1 2 3 4 5 76 Valid Parentheses Stack Easy – 1 2 3 4 5 77 Remove All Adjacent Duplicates In String Stack Easy – 1 2 3 4 5 78 Min Stack Stack Medium – 1 2 3 4 5 79 Evaluate Reverse Polish Notation Stack Medium – 1 2 3 4 5 80 Remove All Adjacent Duplicates in String II Stack Medium – 1 2 3 4 5 81 Simplify Path Stack Medium – 1 2 3 4 5 82 Next Greater Element I Stack Easy – 1 2 3 4 5 83 Daily Temperatures Stack Medium – 1 2 3 4 5 84 Car Fleet Stack Medium – 1 2 3 4 5 85 Next Greater Element II Stack Medium – 1 2 3 4 5 86 Remove Nodes From Linked List Stack Medium – 1 2 3 4 5 87 Remove K Digits Stack Medium – 1 2 3 4 5 88 132 Pattern Stack Medium – 1 2 3 4 5 89 Largest Rectangle in Histogram Stack Hard – 1 2 3 4 5 90 Binary Search Binary Search Easy – 1 2 3 4 5 91 Ceil in Sorted Array Binary Search Easy – 1 2 3 4 5 92 Time Based Key-Value Store Binary Search Medium – 1 2 3 4 5 93 Find First and Last Position Binary Search Medium – 1 2 3 4 5 94 Number of Occurrence Binary Search Medium – 1 2 3 4 5 95 Median of Two Sorted Arrays Binary Search Hard – 1 2 3 4 5 96 Find Rotation Count Binary Search Easy – 1 2 3 4 5 97 Find Minimum in Rotated Sorted Array Binary Search Medium – 1 2 3 4 5 98 Search in Rotated Sorted Array Binary Search Medium – 1 2 3 4 5 99 Peak Index in a Mountain Array Binary Search Medium – 1 2 3 4 5 100 Find Peak Element Binary Search Medium – 1 2 3 4 5 101 Koko Eating Bananas Binary Search Medium – 1 2 3 4 5 102 Minimum Number of Days to Make m Bouquets Binary Search Medium – 1 2 3 4 5 103 Aggressive Cows Binary Search Medium – 1 2 3 4 5 104 Maximum Candies Allocated to K Children Binary Search Medium – 1 2 3 4 5 105 Capacity To Ship Packages Within D Days Binary Search Medium – 1 2 3 4 5 106 Split Array Largest Sum Binary Search Hard – 1 2 3 4 5 107 Search a 2D Matrix Binary Search Medium – 1 2 3 4 5 108 Search a 2D Matrix II Binary Search Medium – 1 2 3 4 5 109 Kth Smallest Element in a Sorted Matrix Binary Search Medium – 1 2 3 4 5 110 Merge Two Sorted Lists Linked List Easy – 1 2 3 4 5 111 Remove Nth Node From End of List Linked List Medium – 1 2 3 4 5 112 Copy List with Random Pointer Linked List Medium – 1 2 3 4 5 113 Add Two Numbers Linked List Medium – 1 2 3 4 5 114 LRU Cache Linked List Medium – 1 2 3 4 5 115 Linked List Cycle Linked List Easy – 1 2 3 4 5 116 Happy Number Linked List Easy – 1 2 3 4 5 117 Middle of the Linked List Linked List Easy – 1 2 3 4 5 118 Palindrome Linked List Linked List Easy – 1 2 3 4 5 119 Reorder List Linked List Medium – 1 2 3 4 5 120 Find the Duplicate Number Linked List Medium – 1 2 3 4 5 121 Linked List Cycle II Linked List Medium – 1 2 3 4 5 122 Circular Array Loop Linked List Medium – 1 2 3 4 5 123 Reverse Linked List Linked List Easy – 1 2 3 4 5 124 Reverse Linked List II Linked List Medium – 1 2 3 4 5 125 Swap Nodes in Pairs Linked List Medium – 1 2 3 4 5 126 Rotate List Linked List Medium – 1 2 3 4 5 127 Reverse Nodes in k-Group Linked List Hard – 1 2 3 4 5 128 Invert Binary Tree Trees Easy – 1 2 3 4 5 129 Maximum Depth of Binary Tree Trees Easy – 1 2 3 4 5 130 Diameter of Binary Tree Trees Easy – 1 2 3 4 5 131 Balanced Binary Tree Trees Easy – 1 2 3 4 5 132 Same Tree Trees Easy – 1 2 3 4 5 133 Subtree of Another Tree Trees Easy – 1 2 3 4 5 134 Count Good Nodes in Binary Tree Trees Medium – 1 2 3 4 5 135 Construct Tree from Preorder and Inorder Trees Medium – 1 2 3 4 5 136 Lowest Common Ancestor of Binary Tree Trees Medium – 1 2 3 4 5 137 Binary Tree Maximum Path Sum Trees Hard – 1 2 3 4 5 138 Serialize and Deserialize Binary Tree Trees Hard – 1 2 3 4 5 139 Binary Tree Level Order Traversal Trees Medium – 1 2 3 4 5 140 Binary Tree Right Side View Trees Medium – 1 2 3 4 5 141 Implement Trie (Prefix Tree) Trees Medium – 1 2 3 4 5 142 Design Add and Search Words Trees Medium – 1 2 3 4 5 143 Extra Characters in a String Trees Medium – 1 2 3 4 5 144 Search Suggestions System Trees Medium – 1 2 3 4 5 145 Word Search II Trees Hard – 1 2 3 4 5 146 Convert Sorted Array to BST BST Easy – 1 2 3 4 5 147 Validate Binary Search Tree BST Medium – 1 2 3 4 5 148 Kth Smallest Element in a BST BST Medium – 1 2 3 4 5 149 Lowest Common Ancestor of a BST BST Medium – 1 2 3 4 5 150 Insert into a BST BST Medium – 1 2 3 4 5 151 Delete Node in a BST BST Medium – 1 2 3 4 5 152 Kth Largest Element in a Stream Heap Easy – 1 2 3 4 5 153 Last Stone Weight Heap Easy – 1 2 3 4 5 154 Top K Frequent Elements Heap Medium – 1 2 3 4 5 155 K Closest Points to Origin Heap Medium – 1 2 3 4 5 156 Kth Largest Element in an Array Heap Medium – 1 2 3 4 5 157 Task Scheduler Heap Medium – 1 2 3 4 5 158 Min Cost to Connect Ropes Heap Medium – 1 2 3 4 5 159 Sort Characters By Frequency Heap Medium – 1 2 3 4 5 160 Find K Closest Elements Heap Medium – 1 2 3 4 5 161 Reorganize String Heap Medium – 1 2 3 4 5 162 Maximum Frequency Stack Heap Hard – 1 2 3 4 5 163 Maximum Sum Combination Heap Medium – 1 2 3 4 5 164 Find Median from Data Stream Heap Hard – 1 2 3 4 5 165 Sliding Window Median Heap Hard – 1 2 3 4 5 166 IPO Heap Hard – 1 2 3 4 5 167 Design Twitter Heap Medium – 1 2 3 4 5 168 Merge k Sorted Lists Heap Hard – 1 2 3 4 5 169 Smallest Range Covering Elements from K Lists Heap Hard – 1 2 3 4 5 170 Jump Game Greedy Medium – 1 2 3 4 5 171 Jump Game II Greedy Medium – 1 2 3 4 5 172 Gas Station Greedy Medium – 1 2 3 4 5 173 Hand of Straights Greedy Medium – 1 2 3 4 5 174 Merge Triplets to Form Target Greedy Medium – 1 2 3 4 5 175 Partition Labels Greedy Medium – 1 2 3 4 5 176 Valid Parenthesis String Greedy Medium – 1 2 3 4 5 177 Maximum Length of Pair Chain Greedy Medium – 1 2 3 4 5 178 Minimum Add to Make Parentheses Valid Greedy Medium – 1 2 3 4 5 179 Remove Duplicate Letters Greedy Medium – 1 2 3 4 5 180 Meeting Rooms Greedy Easy – 1 2 3 4 5 181 Merge Intervals Greedy Medium – 1 2 3 4 5 182 Insert Interval Greedy Medium – 1 2 3 4 5 183 Non-overlapping Intervals Greedy Medium – 1 2 3 4 5 184 Interval List Intersections Greedy Medium – 1 2 3 4 5 185 Meeting Rooms II Greedy Medium – 1 2 3 4 5 186 My Calendar I Greedy Medium – 1 2 3 4 5 187 Generate Parentheses Backtracking Medium – 1 2 3 4 5 188 Subsets Backtracking Medium – 1 2 3 4 5 189 Permutations Backtracking Medium – 1 2 3 4 5 190 Subsets II Backtracking Medium – 1 2 3 4 5 191 Letter Combinations of a Phone Number Backtracking Medium – 1 2 3 4 5 192 Letter Case Permutation Backtracking Medium – 1 2 3 4 5 193 Combination Sum Backtracking Medium – 1 2 3 4 5 194 Combination Sum II Backtracking Medium – 1 2 3 4 5 195 Word Search Backtracking Medium – 1 2 3 4 5 196 Palindrome Partitioning Backtracking Medium – 1 2 3 4 5 197 N-Queens Backtracking Hard – 1 2 3 4 5 198 Sudoku Solver Backtracking Hard – 1 2 3 4 5 199 Find if Path Exists in Graph Graph Easy – 1 2 3 4 5 200 Clone Graph Graph Medium – 1 2 3 4 5 201 Number of Provinces Graph Medium – 1 2 3 4 5 202 Word Ladder Graph Hard – 1 2 3 4 5 203 Reconstruct Itinerary Graph Hard – 1 2 3 4 5 204 Flood Fill Graph Easy – 1 2 3 4 5 205 Island Perimeter Graph Easy – 1 2 3 4 5 206 Number of Islands Graph Medium – 1 2 3 4 5 207 Max Area of Island Graph Medium – 1 2 3 4 5 208 Pacific Atlantic Water Flow Graph Medium – 1 2 3 4 5 209 Surrounded Regions Graph Medium – 1 2 3 4 5 210 Rotting Oranges Graph Medium – 1 2 3 4 5 211 Number of Closed Islands Graph Medium – 1 2 3 4 5 212 Course Schedule Graph Medium – 1 2 3 4 5 213 Course Schedule II Graph Medium – 1 2 3 4 5 214 Topological Sort Graph Medium – 1 2 3 4 5 215 Minimum Height Trees Graph Medium – 1 2 3 4 5 216 Alien Dictionary Graph Hard – 1 2 3 4 5 217 Graph Valid Tree Graph Medium – 1 2 3 4 5 218 Number of Connected Components Graph Medium – 1 2 3 4 5 219 Redundant Connection Graph Medium – 1 2 3 4 5 220 Is Graph Bipartite? Graph Medium – 1 2 3 4 5 221 Path With Minimum Effort Graph Medium – 1 2 3 4 5 222 Network Delay Time Graph Medium – 1 2 3 4 5 223 Cheapest Flights Within K Stops Graph Medium – 1 2 3 4 5 224 Min Cost to Connect All Points Graph Medium – 1 2 3 4 5 225 Swim in Rising Water Graph Hard – 1 2 3 4 5 226 Climbing Stairs Dynamic Programming Easy – 1 2 3 4 5 227 Min Cost Climbing Stairs Dynamic Programming Easy – 1 2 3 4 5 228 House Robber Dynamic Programming Medium – 1 2 3 4 5 229 House Robber II Dynamic Programming Medium – 1 2 3 4 5 230 Decode Ways Dynamic Programming Medium – 1 2 3 4 5 231 Coin Change Dynamic Programming Medium – 1 2 3 4 5 232 Word Break Dynamic Programming Medium – 1 2 3 4 5 233 Longest Increasing Subsequence Dynamic Programming Medium – 1 2 3 4 5 234 Best Time to Buy/Sell with Cooldown Dynamic Programming Medium – 1 2 3 4 5 235 Partition Equal Subset Sum Dynamic Programming Medium – 1 2 3 4 5 236 Coin Change II Dynamic Programming Medium – 1 2 3 4 5 237 Target Sum Dynamic Programming Medium – 1 2 3 4 5 238 0 - 1 Knapsack Problem Dynamic Programming Medium – 1 2 3 4 5 239 Subset Sum Problem Dynamic Programming Medium – 1 2 3 4 5 240 Count Subsets with Sum Dynamic Programming Medium – 1 2 3 4 5 241 Partition Into 2 Subsets with Min Sum Diff Dynamic Programming Hard – 1 2 3 4 5 242 Longest Palindromic Substring Dynamic Programming Medium – 1 2 3 4 5 243 Palindromic Substrings Dynamic Programming Medium – 1 2 3 4 5 244 Unique Paths Dynamic Programming Medium – 1 2 3 4 5 245 Longest Common Subsequence Dynamic Programming Medium – 1 2 3 4 5 246 Interleaving String Dynamic Programming Medium – 1 2 3 4 5 247 Edit Distance Dynamic Programming Medium – 1 2 3 4 5 248 Burst Balloons Dynamic Programming Hard – 1 2 3 4 5 249 Regular Expression Matching Dynamic Programming Hard – 1 2 3 4 5