| Edit Distance | Hard | | StringDynamic Programming |
| Candy | Hard | | ArrayGreedy |
| Jump Game II | Hard | | ArrayDynamic ProgrammingGreedy |
| Text Justification | Hard | | ArrayStringSimulation |
| First Missing Positive | Hard | | ArrayHash Table |
| Meeting Rooms II | Medium | | ArrayTwo PointersGreedy+2 |
| Letter Combinations of a Phone Number | Medium | | Hash TableStringBacktracking |
| Find Minimum in Rotated Sorted Array | Medium | | ArrayBinary Search |
| Gas Station | Medium | | ArrayGreedy |
| Rotting Oranges | Medium | | ArrayBFSMatrix |
| Longest Increasing Subsequence | Medium | | ArrayBinary SearchDynamic Programming |
| Min Stack | Medium | | StackDesign |
| Container With Most Water | Medium | | ArrayTwo PointersGreedy |
| First Bad Version | Easy | | Binary SearchInteractive |
| Flood Fill | Easy | | ArrayDFSBFS+1 |
| Count Bits | Easy | | Dynamic ProgrammingBit Manipulation |
| Sqrt(x) | Easy | | MathBinary Search |
| Path Sum | Easy | | TreeDFSBinary Tree |
| Fibonacci Number | Easy | | MathDynamic ProgrammingRecursion+1 |
| Reverse String | Easy | | Two PointersString |
| Distinct Subsequences | Hard | | StringDynamic Programming |
| Maximal Rectangle | Hard | | ArrayDynamic ProgrammingStack+2 |
| Find Median from Data Stream | Hard | | Two PointersDesignSorting+2 |
| Word Break | Hard | | Hash TableStringDynamic Programming+2 |
| Binary Tree Maximum Path Sum | Hard | | Dynamic ProgrammingTreeDFS+1 |
| Permutations | Medium | | ArrayBacktracking |
| Evaluate Reverse Polish Notation | Medium | | ArrayMathStack |
| Kth Largest Element in an Array | Medium | | ArrayDivide and ConquerSorting+2 |
| Top K Frequent Elements | Medium | | ArrayHash TableDivide and Conquer+3 |
| Subsets | Medium | | ArrayBacktrackingBit Manipulation |
| Combination Sum | Medium | | ArrayBacktracking |
| Unique Paths | Medium | | MathDynamic ProgrammingCombinatorics |
| Rotate Image | Medium | | ArrayMathMatrix |
| Power of Two | Easy | | MathBit ManipulationRecursion |
| Happy Number | Easy | | Hash TableMathTwo Pointers |
| Same Tree | Easy | | TreeDFSBFS+1 |
| Symmetric Tree | Easy | | TreeDFSBFS+1 |
| Move Zeroes | Easy | | ArrayTwo Pointers |
| Missing Number | Easy | | ArrayHash TableMath+2 |
| Linked List Cycle | Easy | | Hash TableLinked ListTwo Pointers |
| Distinct Subsequences | Hard | | StringDynamic Programming |
| Maximal Rectangle | Hard | | ArrayDynamic ProgrammingStack+2 |
| Find Median from Data Stream | Hard | | Two PointersDesignSorting+2 |
| Word Break | Hard | | Hash TableStringDynamic Programming+2 |
| Binary Tree Maximum Path Sum | Hard | | Dynamic ProgrammingTreeDFS+1 |
| Permutations | Medium | | ArrayBacktracking |
| Evaluate Reverse Polish Notation | Medium | | ArrayMathStack |
| Kth Largest Element in an Array | Medium | | ArrayDivide and ConquerSorting+2 |
| Top K Frequent Elements | Medium | | ArrayHash TableDivide and Conquer+3 |
| Subsets | Medium | | ArrayBacktrackingBit Manipulation |
| Combination Sum | Medium | | ArrayBacktracking |
| Unique Paths | Medium | | MathDynamic ProgrammingCombinatorics |
| Rotate Image | Medium | | ArrayMathMatrix |
| Power of Two | Easy | | MathBit ManipulationRecursion |
| Happy Number | Easy | | Hash TableMathTwo Pointers |
| Same Tree | Easy | | TreeDFSBFS+1 |
| Symmetric Tree | Easy | | TreeDFSBFS+1 |
| Move Zeroes | Easy | | ArrayTwo Pointers |
| Missing Number | Easy | | ArrayHash TableMath+2 |
| Linked List Cycle | Easy | | Hash TableLinked ListTwo Pointers |
| Serialize and Deserialize Binary Tree | Hard | | StringTreeDFS+3 |
| Regular Expression Matching | Hard | | StringDynamic ProgrammingRecursion |
| Sliding Window Maximum | Hard | | ArrayQueueSliding Window+1 |
| Largest Rectangle in Histogram | Hard | | ArrayStackMonotonic Stack |
| Minimum Window Substring | Hard | | Hash TableStringSliding Window |
| Word Search | Medium | | ArrayBacktrackingMatrix+1 |
| Spiral Matrix | Medium | | ArrayMatrixSimulation |
| Decode Ways | Medium | | StringDynamic Programming |
| Course Schedule | Medium | | DFSBFSGraph+1 |
| Number of Islands | Medium | | ArrayDFSBFS+2 |
| House Robber | Medium | | ArrayDynamic Programming |
| Search in Rotated Sorted Array | Medium | | ArrayBinary Search |
| Jump Game | Medium | | ArrayDynamic ProgrammingGreedy |
| Majority Element | Easy | | ArrayHash TableDivide and Conquer+2 |
| Roman to Integer | Easy | | Hash TableMathString |
| Reverse Linked List | Easy | | Linked ListRecursion |
| Invert Binary Tree | Easy | | TreeDFSBFS+1 |
| Binary Search | Easy | | ArrayBinary Search |
| Climbing Stairs | Easy | | MathDynamic ProgrammingMemoization |
| Single Number | Easy | | ArrayBit Manipulation |
| Longest Valid Parentheses | Hard | | StringDynamic ProgrammingStack |
| N-Queens | Hard | | BacktrackingArray |
| Trapping Rain Water | Hard | | ArrayTwo PointersStack+1 |
| Merge K Sorted Lists | Hard | | Linked ListDivide and ConquerHeap |
| Median of Two Sorted Arrays | Hard | | ArrayBinary SearchDivide and Conquer |
| Longest Palindromic Substring | Medium | | StringDynamic Programming |
| Binary Tree Level Order Traversal | Medium | | TreeBFSBinary Tree |
| Coin Change | Medium | | Dynamic ProgrammingBFS |
| Validate Binary Search Tree | Medium | | TreeDFSBinary Search Tree+1 |
| Product of Array Except Self | Medium | | ArrayPrefix Sum |
| Group Anagrams | Medium | | ArrayHash TableString+1 |
| 3Sum | Medium | | ArrayTwo PointersSorting |
| Longest Substring Without Repeating Characters | Medium | | StringSliding WindowHash Table |
| Contains Duplicate | Easy | | ArrayHash TableSorting |
| Maximum Subarray | Easy | | ArrayDynamic ProgrammingDivide and Conquer |
| Palindrome Number | Easy | | Math |
| Best Time to Buy and Sell Stock | Easy | | ArrayDynamic Programming |
| Merge Two Sorted Lists | Easy | | Linked ListRecursion |
| Valid Parentheses | Easy | | StringStack |
| Two Sum | Easy | | ArrayHash Table |
| Longest Valid Parentheses | Hard | | StringDynamic ProgrammingStack |
| N-Queens | Hard | | BacktrackingArray |
| Trapping Rain Water | Hard | | ArrayTwo PointersStack+1 |
| Merge K Sorted Lists | Hard | | Linked ListDivide and ConquerHeap |
| Median of Two Sorted Arrays | Hard | | ArrayBinary SearchDivide and Conquer |
| Longest Palindromic Substring | Medium | | StringDynamic Programming |
| Binary Tree Level Order Traversal | Medium | | TreeBFSBinary Tree |
| Coin Change | Medium | | Dynamic ProgrammingBFS |
| Validate Binary Search Tree | Medium | | TreeDFSBinary Search Tree+1 |
| Product of Array Except Self | Medium | | ArrayPrefix Sum |
| Group Anagrams | Medium | | ArrayHash TableString+1 |
| 3Sum | Medium | | ArrayTwo PointersSorting |
| Longest Substring Without Repeating Characters | Medium | | StringSliding WindowHash Table |
| Contains Duplicate | Easy | | ArrayHash TableSorting |
| Maximum Subarray | Easy | | ArrayDynamic ProgrammingDivide and Conquer |
| Palindrome Number | Easy | | Math |
| Best Time to Buy and Sell Stock | Easy | | ArrayDynamic Programming |
| Merge Two Sorted Lists | Easy | | Linked ListRecursion |
| Valid Parentheses | Easy | | StringStack |
| Two Sum | Easy | | ArrayHash Table |