Must-Do LeetCode Hard Problems (Remaining)
Dynamic Programming
- 10 - Regular Expression Matching
- 44 - Wildcard Matching
- 132 - Palindrome Partitioning II
- 174 - Dungeon Game
- 312 - Burst Balloons
- 329 - Longest Increasing Path in a Matrix
- 403 - Frog Jump
- 410 - Split Array Largest Sum
- 514 - Freedom Trail
- 1235 - Job Scheduling with Profit
- 1473 - Paint House III
Binary Search / Greedy / Math
- 154 - Find Minimum in Rotated Array II
- 668 - Kth Smallest Number in Multiplication Table
- 715 - Range Module
- 774 - Minimize Max Distance to Gas Station
- 857 - Minimum Cost to Hire K Workers
- 871 - Minimum Refueling Stops
- 1283 - Smallest Divisor Given a Threshold
Divide & Conquer / Tree / DFS
- 297 - Serialize and Deserialize Binary Tree
- 327 - Count of Range Sum
- 543 - Diameter of Binary Tree
- 968 - Binary Tree Cameras
Segment Tree / Advanced Data Structures
- 307 - Range Sum Query - Mutable
- 315 - Count of Smaller Numbers After Self
- 493 - Reverse Pairs
- 218 - The Skyline Problem
Bitmask / Backtracking
- 301 - Remove Invalid Parentheses
- 980 - Unique Paths III
- 140 - Word Break II
- 1593 - Split a String Into the Max Number of Unique Substrings
Design / LRU / Hard Simulation
- 146 - LRU Cache
- 460 - LFU Cache
- 588 - File System
- 632 - Smallest Range Covering Elements from K Lists
Strings / Sliding Window / Trie
- 76 - Minimum Window Substring
- 239 - Sliding Window Maximum
- 336 - Palindrome Pairs
- 472 - Concatenated Words
- 920 - Number of Music Playlists
Topological Sort / Graphs
- 269 - Alien Dictionary
- 332 - Reconstruct Itinerary
- 803 - Bricks Falling When Hit
- 1192 - Critical Connections in a Network
- 1462 - Course Schedule IV