| Problem | Difficulty |
|---|---|
| 945. Minimum Increment to Make Array Unique | Medium (1448) |
| 1647. Minimum Deletions to Make Character Frequencies Unique | Medium (1509) |
| 1509. Minimum Difference Between Largest and Smallest Value in Three Moves | Medium (1653) |
| 3397. Maximum Number of Distinct Elements After Operations | Medium (1687) |
| 948. Bag of Tokens | Medium (1762) |
| 1775. Equal Sum Arrays With Minimum Number of Operations | Medium (1850) |
| Problem | Difficulty |
|---|---|
| 561. Array Partition | Easy |
| 881. Boats to Save People | Medium |
| 2592. Maximize Greatness of an Array | Medium (1569) |
| 1877. Minimize Maximum Pair Sum in Array | Medium (1301) |
| 976. Largest Perimeter Triangle | Easy (1340) |
| 826. Most Profit Assigning Work | Medium (1708) |
| Problem | Difficulty |
|---|
| Problem | Difficulty |
|---|---|
| 1221. Split a String in Balanced Strings | Easy (1219) |
| 605. Can Place Flowers | Easy |
| 1529. Minimum Suffix Flips | Medium (1392) |
| 861. Score After Flipping Matrix | Medium (1818) |
| Problem | Difficulty |
|---|---|
| 767. Reorganize String | Medium (1681) |
| 984. String Without AAA or BBB | Medium (1474) |
| 1405. Longest Happy String | Medium (1820) |
| 621. Task Scheduler | Medium |
The following problems can be categorized into the other topics, such as heap, stack...etc.
| Problem | Difficulty |
|---|---|
| 55. Jump Game | Medium |
| 45. Jump Game II | Medium |
| 334. Increasing Triplet Subsequence | Medium |
| 134. Gas Station | Medium |
| 135. Candy | Hard |
| 455. Assign Cookies | Easy |
| 1541. Minimum Insertions to Balance a Parentheses String | Medium (1759) |
| 1249. Minimum Remove to Make Valid Parentheses | Medium (1657) |
| 1963. Minimum Number of Swaps to Make the String Balanced | Medium (1688) |
| 3413. Maximum Coins From K Consecutive Bags | Medium (TODO) |
| Problem | Rating | Reason |
|---|---|---|
| 1510. Minimum Deletions to Make Character Frequencies Unique | 1510 | Classic greedy with set/freq logic, high interview frequency. |
| 1521. Find Polygon With the Largest Perimeter | 1521 | Classic "sort then greedy check" type. Fast to implement. |
| 1538. Maximum Number of Unique Even Sum | 1538 | Frequency-sum strategy; a fast greedy decision builder. |
| 1609. Minimum Difference Between Highest and Lowest of K Scores | 1609 | Often used in FAANG interviews; relies on sorting window. |
| 1653. Minimum Difference After Three Moves | 1653 | High signal-to-noise ratio greedy problem. Quick win. |
| Problem | Rating | Reason |
|---|---|---|
| 1510. Minimum Deletions to Make Character Frequencies Unique | 1510 | Pure greedy frequency problem, very frequent in Google/Facebook. |
| 2178. Maximum Even Split | 1538 | Elegant greedy summation problem, very intuitive with optimal partitioning. |
| 2567. Minimum Difference Between Highest and Lowest of K Elements | 1609 | Smart observation problem. Shows up in difference minimization style interviews. |
| 1509. Minimum Difference Between Largest and Smallest Value After Three Moves | 1653 | Boundary-based greedy, appears often in Google screening rounds. |
| 1775. Equal Sum Arrays With Minimum Number of Operations | 1850 | Greedy matching from both ends. Involved but popular high-bar problem. |
| Problem | Rating | Reason |
|---|---|---|
| 881. Boats to Save People | 1530 | Two-pointer greedy classic. Top interview question; Google/FB love this. |
| 2592. Maximize Greatness of an Array | 1569 | Greedy matching after sorting. Good for thinking about > / < pairs. |
| 2576. Find the Maximum Number of Marked Indices | 1843 | Rated high for difficulty. Great greedy + binary matching logic. |
| Problem | Rating | Reason |
|---|---|---|
| 870. Advantage Shuffle | 1648 | Classic "greedy matching with sort + binary search". Common in FAANG. |
| 826. Most Profit Assigning Work | 1709 | Good combo of sorting + two-pointer. High interview frequency. |
| 1433. Check If a String Can Break Another String | 1436 | Unique lexicographical greedy. Good mental model test. |
| Problem | Rating | Reason |
|---|---|---|
| 1753. Maximum Score From Removing Stones | 1488 | Greedy + heap simulation; classic and clean. Common in interviews. |
| 2856. Minimum Array Length After Pair Removals | 1750 | Core greedy pairing + multiset/freq map. Great test of decision logic. |
| 767. Reorganize String | 1804 | High-frequency Facebook/Google question. Must-know greedy + heap. |
| 1405. Longest Happy String | 1821 | Variation of 767. Greedy with constraints. Great pattern builder. |
| Problem | Rating | Reason |
|---|---|---|
| 942. DI String Match | 1444 | Simple but elegant greedy. Classic intro to construction. |
| 1253. Reconstruct a 2-Row Binary Matrix | 1506 | Constraint-based greedy allocation. Interview-worthy. |
| 2182. Construct String With Repeat Limit | 1680 | Heap + greedy. Appears in FB interviews. |
| 1605. Find Valid Matrix Given Row and Column Sums | 1868 | Row/col flow matching via greedy. Strong system design aspect. |
| 2375. Construct Smallest Number From DI String | 1642 | 🔁 Classic monotonic stack variant. Great interview pattern. |
| Priority | Problem | Rating | Section | Why You Should Do It |
|---|---|---|---|---|
| 🥇 | 1510. Minimum Deletions to Make Character Frequencies Unique | 1510 | §1.1 | Core frequency + greedy fix; highly asked |
| 🥈 | 1609. Minimum Difference Between Highest and Lowest of K Scores | 1609 | §1.1 | Sort + window, common in top-K |
| 🥉 | 1653. Minimum Difference After Three Moves | 1653 | §1.1 | Quick greedy boundary fix; great pattern |
| ✅ | 881. Boats to Save People | 1530 | §1.2 | Two-pointer greedy; top interview pick |
| ✅ | 2592. Maximize Greatness of an Array | 1569 | §1.2 | Sort + pointer matching |
| ✅ | 2576. Max Marked Indices | 1843 | §1.2 | Sorting + binary greedy; subtle logic |
| ✅ | 870. Advantage Shuffle | 1648 | §1.3 | Sort + optimal matching |
| ✅ | 826. Most Profit Assigning Work | 1709 | §1.3 | Sorted max mapping; very frequent |
| ✅ | 1433. String Can Break Another | 1436 | §1.3 | Lexicographical greedy |
| ✅ | 1144. Decrease Elements to Make Array Zigzag | 1559 | §1.4 | Local min/peak fix via greedy |
| ✅ | 3228. Minimum Moves to Group 1's II | 1593 | §1.4 | Sliding window + balance logic |
| ✅ | 2086. Min Food Buckets | 1623 | §1.4 | Greedy edge/center coverage |
| ✅ | 2571. Reduce Integer to Zero | 1649 | §1.4 | Greedy + bitwise pattern |
| ✅ | 2294. Partition Array with Max Diff ≤ K | 1503 | §1.5 | Sorting + boundary group logic |
| ✅ | 2522. Partition String with Value ≤ K | 1605 | §1.5 | Greedy scan + string chunking |
| ✅ | 1546. Max Non-overlapping Subarrays with Target Sum | 1855 | §1.5 | Greedy + prefix sum; tricky but valuable |
| ✅ | 2171. Minimum Magic Beans Removal | 1748 | §1.6 | Prefix sum + greedy choice |
| ✅ | 3085. Min Deletion to Make String K-Special | 1765 | §1.6 | Frequency logic with K constraint |
| ✅ | 1727. Largest Submatrix After Row Sort | 1927 | §1.6 | Greedy sorting of matrix rows |
| ✅ | 767. Reorganize String | 1804 | §1.8 | Top-tier interview problem, greedy + heap |
| ✅ | 1405. Longest Happy String | 1821 | §1.8 | Follow-up on 767, reinforces pattern |
| ✅ | 2856. Minimum Array Length After Pair Removals | 1750 | §1.8 | Freq map + greedy matching |
| ✅ | 1753. Max Score From Removing Stones | 1488 | §1.8 | Classic greedy + heap |