200 Must-Solve Medium LeetCode Problems
Array & Two Pointers
1. 3Sum
2. Container With Most Water
3. Merge Intervals
4. Insert Interval
5. Spiral Matrix
6. Subarray Sum Equals K
7. Maximum Subarray (Kadane's Algo)
8. Product of Array Except Self
9. Find First and Last Position of Element in Sorted Array
10. Minimum Size Subarray Sum
11. Rotate Array
12. Next Permutation
13. K-diff Pairs in an Array
14. Sort Colors
15. Longest Consecutive Sequence
16. Set Matrix Zeroes
17. Game of Life
18. Toeplitz Matrix
19. Diagonal Traverse
20. Max Consecutive Ones III
21. Move Zeroes
22. Summary Ranges
23. Sliding Window Maximum
24. Partition Labels
25. Find All Duplicates in an Array
String & Manipulation
1. Longest Substring Without Repeating Characters
2. Longest Palindromic Substring
3. Group Anagrams
4. Valid Anagram
5. Multiply Strings
6. Integer to Roman
7. Roman to Integer
8. Longest Common Prefix
9. Valid Palindrome II
10. Implement strStr()
11. Count and Say
12. Minimum Window Substring
13. Valid Parentheses
14. Decode Ways
15. Palindromic Substrings
16. Reorganize String
17. Reverse Words in a String
18. Add Binary
19. Zigzag Conversion
20. Is Subsequence
HashMap & Set
1. Two Sum
2. Top K Frequent Elements
3. Contains Duplicate II
4. Intersection of Two Arrays
5. Happy Number
6. Ransom Note
7. Word Pattern
8. LRU Cache
9. Clone Graph
10. Isomorphic Strings
11. Minimum Index Sum of Two Lists
12. Longest Harmonious Subsequence
13. Group Shifted Strings
14. Subarray Sum Equals K
15. First Unique Character in a String
16. Four Sum II
17. Degree of an Array
18. Longest Word in Dictionary through Deleting
19. Word Break
20. Repeated DNA Sequences
Binary Tree & BST
1. Binary Tree Level Order Traversal
2. Binary Tree Zigzag Level Order Traversal
3. Binary Tree Right Side View
4. Path Sum II
5. Sum Root to Leaf Numbers
6. Convert Sorted Array to BST
7. Validate Binary Search Tree
8. Kth Smallest Element in BST
9. Lowest Common Ancestor of a BST
10. Binary Tree Inorder Traversal
11. Construct Binary Tree from Preorder and Inorder
12. Flatten Binary Tree to Linked List
13. Populating Next Right Pointers in Each Node
14. Serialize and Deserialize Binary Tree
15. Diameter of Binary Tree
16. Maximum Depth of Binary Tree
17. Balanced Binary Tree
18. Subtree of Another Tree
19. Invert Binary Tree
20. Binary Tree Maximum Path Sum
21. Cousins in Binary Tree
22. Construct Binary Tree from Inorder and Postorder
23. Binary Tree Paths
24. Delete Node in a BST
25. Count Good Nodes in Binary Tree
Backtracking
1. Subsets
2. Subsets II
3. Permutations
4. Permutations II
5. Combination Sum
6. Combination Sum II
7. Word Search
8. N-Queens
9. Sudoku Solver
10. Palindrome Partitioning
11. Restore IP Addresses
12. Letter Combinations of a Phone Number
13. Generate Parentheses
14. Combination Sum III
15. Matchsticks to Square
Graph & DFS/BFS
1. Number of Islands
2. Clone Graph
3. Course Schedule
4. Course Schedule II
5. Pacific Atlantic Water Flow
6. Walls and Gates
7. Rotting Oranges
8. Word Ladder
9. Reconstruct Itinerary
10. Alien Dictionary
11. Surrounded Regions
12. Redundant Connection
13. Network Delay Time
14. Critical Connections in a Network
15. Find Eventual Safe States
16. Evaluate Division
17. Accounts Merge
18. Number of Connected Components
19. Number of Provinces
20. Graph Valid Tree
Heap & Priority Queue
1. Kth Largest Element in an Array
2. Merge K Sorted Lists
3. Top K Frequent Words
4. Reorganize String
5. Find Median from Data Stream
6. Task Scheduler
7. Minimum Cost to Connect Sticks
8. Sliding Window Maximum
9. Sort Characters by Frequency
10. The Skyline Problem
Dynamic Programming
1. House Robber
2. House Robber II
3. Longest Increasing Subsequence
4. Maximum Product Subarray
5. Coin Change
6. Coin Change II
7. Decode Ways
8. Unique Paths
9. Unique Paths II
10. Climbing Stairs
11. Minimum Path Sum
12. Edit Distance
13. Interleaving String
14. Best Time to Buy and Sell Stock with Cooldown
15. Paint House
16. Paint Fence
17. Word Break
18. Jump Game
19. Jump Game II
20. Maximum Length of Repeated Subarray
21. Longest Palindromic Subsequence
22. Partition Equal Subset Sum
23. Ones and Zeroes
24. Target Sum
25. Regular Expression Matching
26. Wildcard Matching
27. Palindrome Partitioning II
28. Cherry Pickup
29. Longest Arithmetic Subsequence
Linked List
1. Add Two Numbers
2. Reverse Linked List II
3. Rotate List
4. Remove Nth Node From End of List
5. Reorder List
6. Swap Nodes in Pairs
7. Odd Even Linked List
8. Merge Two Sorted Lists
9. Merge k Sorted Lists
10. Sort List
11. Copy List with Random Pointer
12. LRU Cache
13. Intersection of Two Linked Lists
14. Linked List Cycle II
15. Partition List
Math & Bit Manipulation
1. Power of Two
2. Power of Four
3. Reverse Integer
4. String to Integer (atoi)
5. Excel Sheet Column Number
6. Excel Sheet Column Title
7. Rotate Function
8. Sum of Two Integers
9. Counting Bits
10. Missing Number
Stack & Monotonic Stack
1. Daily Temperatures
2. Min Stack
3. Evaluate Reverse Polish Notation
4. Largest Rectangle in Histogram
5. Basic Calculator II
6. Next Greater Element II
7. Asteroid Collision
8. Remove K Digits
9. Maximal Rectangle
10. Decode String