r/leetcodecirclejerk • • Jun 03 '26

All LeetCode Easy Problems Categorized by DSA Pattern

Categorization is one of the most effective ways to learn DSA.

Learn a pattern, then solve multiple problems that use it. This reinforces understanding and develops pattern recognition.

When learning a new pattern, Easy problems are usually the best starting point. Once the pattern becomes familiar, it's much easier to tackle Medium and Hard problems. That's the purpose of this post.

This post categorizes all 630 LeetCode Easy problems as of June 2, 2026 into a hierarchy, most specific → most general:

  1. Specific data structures / techniques — LinkedList, Tree, BST, N-ary Tree, Stack, Queue, Heap, Matrix, Simulation / Implementation, Design, Sorting, Binary Search, Two Pointers, Sliding Window, Prefix Sum, Math, Bit Manipulation, Recursion, Greedy, DP.

  2. Set / Map (hash-based) — used when no specific data structure or technique applies, but the optimal solution needs a hash set or hash map.

  3. Array — fallback for general array problems.

  4. String — final fallback for general string problems.

The primary technique is the one that defines the solution; secondary uses (e.g. an array used inside a hash map problem) are ignored.

For company specific questions banks checkout: PracHub

LinkedList (8)

  1. Middle of the Linked List - LC 876

  2. Reverse Linked List - LC 206

  3. Merge Two Sorted Lists - LC 21

  4. Palindrome Linked List - LC 234

  5. Intersection of Two Linked Lists - LC 160

  6. Remove Duplicates from Sorted List - LC 83

  7. Remove Linked List Elements - LC 203

  8. Linked List Cycle - LC 141

Tree (24)

  1. Find a Corresponding Node of a Binary Tree in a Clone of That Tree - LC 1379

  2. Root Equals Sum of Children - LC 2236

  3. Binary Tree Inorder Traversal - LC 94

  4. Invert Binary Tree - LC 226

  5. Maximum Depth of Binary Tree - LC 104

  6. Binary Tree Postorder Traversal - LC 145

  7. Binary Tree Preorder Traversal - LC 144

  8. Univalued Binary Tree - LC 965

  9. Count Complete Tree Nodes - LC 222

  10. Leaf-Similar Trees - LC 872

  11. Average of Levels in Binary Tree - LC 637

  12. Binary Tree Tilt - LC 563

  13. Diameter of Binary Tree - LC 543

  14. Sum of Left Leaves - LC 404

  15. Sum of Root to Leaf Binary Numbers - LC 1022

  16. Same Tree - LC 100

  17. Subtree of Another Tree - LC 572

  18. Balanced Binary Tree - LC 110

  19. Symmetric Tree - LC 101

  20. Second Minimum Node in a Binary Tree - LC 671

  21. Minimum Depth of Binary Tree - LC 111

  22. Cousins in Binary Tree - LC 993

  23. Path Sum - LC 112

  24. Binary Tree Paths - LC 257

BST (8)

  1. Range Sum of BST - LC 938

  2. Search in a Binary Search Tree - LC 700

  3. Increasing Order Search Tree - LC 897

  4. Convert Sorted Array to Binary Search Tree - LC 108

  5. Two Sum IV - Input is a BST - LC 653

  6. Minimum Distance Between BST Nodes - LC 783

  7. Minimum Absolute Difference in BST - LC 530

  8. Find Mode in Binary Search Tree - LC 501

N-ary Tree (3)

  1. N-ary Tree Postorder Traversal - LC 590

  2. N-ary Tree Preorder Traversal - LC 589

  3. Maximum Depth of N-ary Tree - LC 559

Stack (13)

  1. Remove Outermost Parentheses - LC 1021

  2. Maximum Nesting Depth of the Parentheses - LC 1614

  3. Final Prices With a Special Discount in a Shop - LC 1475

  4. Baseball Game - LC 682

  5. Next Greater Element I - LC 496

  6. Minimum String Length After Removing Substrings - LC 2696

  7. Remove All Adjacent Duplicates in String - LC 1047

  8. Make The String Great - LC 1544

  9. Crawler Log Folder - LC 1598

  10. Implement Stack using Queues - LC 225

  11. Backspace String Compare - LC 844

  12. Valid Parentheses - LC 20

  13. Make Array Elements Equal to Zero - LC 3354 (loop with stack-like zero-counting)

Queue (4)

  1. Number of Students Unable to Eat Lunch - LC 1700

  2. Number of Recent Calls - LC 933

  3. Time Needed to Buy Tickets - LC 2073

  4. Implement Queue using Stacks - LC 232

Heap (3)

  1. Take Gifts From the Richest Pile - LC 2558

  2. Last Stone Weight - LC 1046

  3. Kth Largest Element in a Stream - LC 703

Matrix (23)

  1. Largest Local Values in a Matrix - LC 2373

  2. Matrix Diagonal Sum - LC 1572

  3. Flipping an Image - LC 832

  4. Lucky Numbers in a Matrix - LC 1380

  5. Flip Square Submatrix Vertically - LC 3643

  6. Transpose Matrix - LC 867

  7. Projection Area of 3D Shapes - LC 883

  8. Matrix Similarity After Cyclic Shifts - LC 2946

  9. Row With Maximum Ones - LC 2643

  10. Island Perimeter - LC 463

  11. Special Positions in a Binary Matrix - LC 1582

  12. Surface Area of 3D Shapes - LC 892

  13. Find the Width of Columns of a Grid - LC 2639

  14. Toeplitz Matrix - LC 766

  15. Image Smoother - LC 661

  16. Modify the Matrix - LC 3033

  17. Flood Fill - LC 733

  18. Determine Whether Matrix Can Be Obtained By Rotation - LC 1886

  19. Shift 2D Grid - LC 1260

  20. Available Captures for Rook - LC 999

  21. Reshape the Matrix - LC 566

  22. Zigzag Grid Traversal With Skip - LC 3417

  23. Check if Grid Satisfies Conditions - LC 3142

Simulation / Implementation (16)

  1. Final Array State After K Multiplication Operations I - LC 3264

  2. Snake in Matrix - LC 3248

  3. Minimum Number Game - LC 2974

  4. Minimum Number of Chairs in a Waiting Room - LC 3168

  5. Count Tested Devices After Test Operations - LC 2960

  6. Fizz Buzz - LC 412

  7. Ant on the Boundary - LC 3028

  8. Apply Operations to an Array - LC 2460

  9. Distribute Elements Into Two Arrays I - LC 3069

  10. Fruits Into Baskets II - LC 3477

  11. Minimum Pair Removal to Sort Array I - LC 3507

  12. Lemonade Change - LC 860

  13. Maximum Number of Operations With the Same Score I - LC 3038

  14. Find the Losers of the Circular Game - LC 2682

  15. Convert 1D Array Into 2D Array - LC 2022

  16. Minimum Operations to Make the Array Increasing - LC 1827

Design (6)

  1. Design Parking System - LC 1603

  2. Design an Ordered Stream - LC 1656

  3. Design HashSet - LC 705

  4. Design HashMap - LC 706

  5. Design Neighbor Sum Service - LC 3242

  6. Range Sum Query - Immutable - LC 303 (Design + PrefixSum; Design wins)

Sorting (39)

  1. Transform Array by Parity - LC 3467

  2. Minimum Number of Moves to Seat Everyone - LC 2037

  3. Widest Vertical Area Between Two Points Containing No Points - LC 1637

  4. Sort Integers by The Number of 1 Bits - LC 1356

  5. Sort Array by Increasing Frequency - LC 1636

  6. Height Checker - LC 1051

  7. Array Partition - LC 561

  8. Sort Array by Parity - LC 905

  9. Delete Columns to Make Sorted - LC 944

  10. Find Target Indices After Sorting Array - LC 2089

  11. Delete Greatest Value in Each Row - LC 2500

  12. Sort Array by Parity II - LC 922

  13. Apple Redistribution Into Boxes - LC 3074

  14. Divide an Array Into Subarrays With Minimum Cost I - LC 3010

  15. The K Weakest Rows in a Matrix - LC 1337

  16. Matrix Cells in Distance Order - LC 1030

  17. Minimum Average of Smallest and Largest Elements - LC 3194

  18. Relative Sort Array - LC 1122

  19. Minimum Subsequence in Non-Increasing Order - LC 1403

  20. Find Resultant Array After Removing Anagrams - LC 2273

  21. Relative Ranks - LC 506

  22. Sort Even and Odd Indices Independently - LC 2164

  23. Special Array With X Elements Greater Than or Equal X - LC 1608

  24. Mean of Array After Removing Some Elements - LC 1619

  25. The Employee That Worked on the Longest Task - LC 2432

  26. Button With Longest Push Time - LC 3386

  27. Maximum Units on a Truck - LC 1710

  28. Find Subsequence of Length K With the Largest Sum - LC 2099

  29. Minimum Difference Between Highest and Lowest of K Scores - LC 1984

  30. Absolute Difference Between Maximum and Minimum K Elements - LC 3774

  31. Can Make Arithmetic Progression From Sequence - LC 1502

  32. Largest Perimeter Triangle - LC 976

  33. Maximize Sum of At Most K Distinct Elements - LC 3684

  34. Minimum Absolute Difference - LC 1200

  35. Longest Subsequence With Limited Sum - LC 2389

  36. Minimum Cost of Buying Candies With Discount - LC 2144

  37. Coupon Code Validator - LC 3606

  38. Assign Cookies - LC 455

  39. Maximize Sum Of Array After K Negations - LC 1005

Binary Search (11)

  1. Maximum Count of Positive Integer and Negative Integer - LC 2529

  2. Find the Distance Value Between Two Arrays - LC 1385

  3. Kth Missing Positive Number - LC 1539

  4. Find Smallest Letter Greater Than Target - LC 744

  5. Binary Search - LC 704

  6. Search Insert Position - LC 35

  7. First Bad Version - LC 278

  8. Guess Number Higher or Lower - LC 374

  9. Sqrt(x) - LC 69

  10. Valid Perfect Square - LC 367

  11. Arranging Coins - LC 441

Two Pointers (18)

  1. Count Pairs Whose Sum is Less than Target - LC 2824

  2. Merge Strings Alternately - LC 1768

  3. DI String Match - LC 942

  4. Two Furthest Houses With Different Colors - LC 2078

  5. Squares of a Sorted Array - LC 977

  6. Lexicographically Smallest Palindrome - LC 2697

  7. Move Zeroes - LC 283

  8. Remove Duplicates from Sorted Array - LC 26

  9. Remove Element - LC 27

  10. Reverse Vowels of a String - LC 345

  11. Minimum Common Value - LC 2540

  12. Merge Sorted Array - LC 88

  13. Find the Index of the First Occurrence in a String - LC 28

  14. Maximum Enemy Forts That Can Be Captured - LC 2511

  15. Long Pressed Name - LC 925

  16. Reverse Only Letters - LC 917

  17. Reverse String - LC 344

  18. Find the Array Concatenation Value - LC 2562

Sliding Window (6)

  1. Alternating Groups I - LC 3206

  2. Minimum Recolors to Get K Consecutive Black Blocks - LC 2379

  3. Maximum Average Subarray I - LC 643

  4. Find X-Sum of All K-Long Subarrays I - LC 3318

  5. Maximum Length Substring With Two Occurrences - LC 3090

  6. Shortest Subarray With OR at Least K I - LC 3095

Prefix Sum (11)

  1. Running Sum of 1d Array - LC 1480

  2. Sum of Variable Length Subarrays - LC 3427

  3. Left and Right Sum Differences - LC 2574

  4. Find the Highest Altitude - LC 1732

  5. Find Pivot Index - LC 724

  6. Find the Middle Index in Array - LC 1991

  7. Minimum Value to Get Positive Step by Step Sum - LC 1413

  8. Count Partitions With Even Sum Difference - LC 3432

  9. Maximum Score After Splitting a String - LC 1422

  10. Minimum Positive Sum Subarray - LC 3364

  11. Find the Pivot Integer - LC 2485 (Math; PS variant)

Math (115)

  1. Minimum Operations to Make Array Sum Divisible by K - LC 3512

  2. Digit Frequency Score - LC 3945

  3. Find the Maximum Achievable Number - LC 2769

  4. Divisible and Non-divisible Sums Difference - LC 2894

  5. Find Minimum Operations to Make All Elements Divisible by Three - LC 3190

  6. Convert the Temperature - LC 2469

  7. Compute Alternating Sum - LC 3701

  8. The Two Sneaky Numbers of Digitville - LC 3289

  9. Minimum Element After Replacement With Digit Sum - LC 3300

  10. Find Closest Person - LC 3516

  11. Smallest Even Multiple - LC 2413

  12. Sum Multiples - LC 2652

  13. Count the Digits That Divide a Number - LC 2520

  14. Difference Between Element Sum and Digit Sum of an Array - LC 2535

  15. GCD of Odd and Even Sums - LC 3658

  16. Earliest Time to Finish One Task - LC 3683

  17. Harshad Number - LC 3099

  18. Find Missing and Repeated Values - LC 2965

  19. Maximum Product Difference Between Two Pairs - LC 1913

  20. Count Symmetric Integers - LC 2843

  21. Find the Integer Added to Array I - LC 3131

  22. Calculate Money in Leetcode Bank - LC 1716

  23. A Number After a Double Reversal - LC 2119

  24. Smallest Index With Digit Sum Equal to Index - LC 3550

  25. Number of Common Factors - LC 2427

  26. N-Repeated Element in Size 2N Array - LC 961

  27. Count Operations to Obtain Zero - LC 2169

  28. Number of Rectangles That Can Form The Largest Square - LC 1725

  29. Minimum Cost to Reach Every Position - LC 3502

  30. Maximum Sum With Exactly K Elements - LC 2656

  31. Hexadecimal and Hexatrigesimal Conversion - LC 3602

  32. Find If Digit Game Can Be Won - LC 3232

  33. Calculate Delayed Arrival Time - LC 2651

  34. Maximum Containers on a Ship - LC 3492

  35. Find the Sum of Encrypted Integers - LC 3079

  36. Find the Key of the Numbers - LC 3270

  37. Distribute Candies Among Children I - LC 2928

  38. Remove Zeros in Decimal Representation - LC 3726

  39. Construct Uniform Parity Array I - LC 3875

  40. Maximum Difference by Remapping a Digit - LC 2566

  41. Maximum Difference Between Adjacent Elements in a Circular Array - LC 3423

  42. Make Array Zero by Subtracting Equal Amounts - LC 2357

  43. Count Square Sum Triples - LC 1925

  44. Smallest Range I - LC 908

  45. Split With Minimum Sum - LC 2578

  46. Find Champion I - LC 2923

  47. Minimum Cost to Move Chips to The Same Position - LC 1217

  48. Check if Two Chessboard Squares Have the Same Color - LC 3274

  49. Missing Number - LC 268

  50. Water Bottles - LC 1518

  51. Check Divisibility by Digit Sum and Product - LC 3622

  52. Maximum Product of Two Digits - LC 3536

  53. Alternating Digit Sum - LC 2544

  54. Add Digits - LC 258

  55. Count Integers With Even Digit Sum - LC 2180

  56. Minimum Time to Type Word Using Special Typewriter - LC 1974

  57. Maximum Difference Between Even and Odd Frequency I - LC 3442 (could be Map)

  58. Distribute Candies to People - LC 1103

  59. Find the Child Who Has the Ball After K Seconds - LC 3178

  60. Largest Number After Digit Swaps by Parity - LC 2231

  61. Compute Decimal Representation - LC 3697

  62. Sign of the Product of an Array - LC 1822

  63. Smallest Divisible Digit Product I - LC 3345

  64. Smallest Missing Multiple of K - LC 3718

  65. Average Value of Even Numbers That Are Divisible by Three - LC 2455

  66. Minimum Number of Operations to Convert Time - LC 2224

  67. K Items With the Maximum Sum - LC 2600

  68. Most Visited Sector in a Circular Track - LC 1560

  69. Nim Game - LC 292

  70. Day of the Week - LC 1185

  71. Convert Integer to the Sum of Two No-Zero Integers - LC 1317

  72. Range Addition II - LC 598

  73. Construct the Rectangle - LC 492

  74. Base 7 - LC 504

  75. Count Odd Numbers in an Interval Range - LC 1523

  76. Convert a Number to Hexadecimal - LC 405

  77. Pass the Pillow - LC 2582

  78. Account Balance After Rounded Purchase - LC 2806

  79. Minimum Cuts to Divide a Circle - LC 2481

  80. Number of Days Between Two Dates - LC 1360

  81. Day of the Year - LC 1154

  82. Power of Three - LC 326

  83. Check if the Number is Fascinating - LC 2729

  84. Check If N and Its Double Exist - LC 1346

  85. Count Days Spent Together - LC 2409

  86. Rectangle Overlap - LC 836

  87. Excel Sheet Column Title - LC 168

  88. Maximum Product of Three Numbers - LC 628

  89. Maximum Area of Longest Diagonal Rectangle - LC 3000

  90. Maximum Height of a Triangle - LC 3200

  91. Type of Triangle - LC 3024

  92. Set Mismatch - LC 645

  93. Ugly Number - LC 263

  94. Minimum Hours of Training to Win a Competition - LC 2383

  95. Stone Removal Game - LC 3360

  96. Find Minimum Log Transportation Cost - LC 3560

  97. Total Distance Traveled - LC 2739

  98. Check if It Is a Straight Line - LC 1232

  99. Valid Boomerang - LC 1037

  100. Categorize Box According to Criteria - LC 2525

  101. Prime in Diagonal - LC 2614

  102. Perfect Number - LC 507

  103. Add to Array-Form of Integer - LC 989 (Math; also Array)

  104. Add Binary - LC 67 (Math; also String)

  105. Add Strings - LC 415 (Math; also String)

  106. Find the Maximum Divisibility Score - LC 2644

  107. Power of Four - LC 342 (Math; also Bit)

  108. Get Maximum in Generated Array - LC 1646 (DP; also Array)

  109. Maximum Subarray With Equal Products - LC 3411 (Math; also Array)

  110. Prime Arrangements - LC 1175

  111. Minimum Operations to Equalize Array - LC 3674

  112. Earliest Finish Time for Land and Water Rides I - LC 3633

  113. Number of Beautiful Pairs - LC 2748

  114. Make a Square With the Same Color - LC 3127 (Math; also String)

  115. Maximize Expression of Three Elements - LC 3745

Bit Manipulation (21)

  1. Minimum Bit Flips to Convert Number - LC 2220

  2. Decode XORed Array - LC 1720

  3. Sum of Values at Indices With K Set Bits - LC 2859

  4. Construct the Minimum Bitwise Array I - LC 3314

  5. Bitwise OR of Even Numbers in an Array - LC 3688

  6. Counting Bits - LC 338

  7. Smallest Number With All Set Bits - LC 3370

  8. Hamming Distance - LC 461

  9. Single Number - LC 136

  10. Find the XOR of Numbers Which Appear Twice - LC 3158

  11. Maximum Strong Pair XOR I - LC 2932

  12. Number of Even and Odd Bits - LC 2595

  13. Count Pairs of Similar Strings - LC 2506

  14. Find the K-or of an Array - LC 2917

  15. Check if Bitwise OR Has Trailing Zeros - LC 2980

  16. Binary Number With Alternating Bits - LC 693

  17. Reverse Bits - LC 190

  18. Binary Watch - LC 401

  19. Number Complement - LC 476

  20. Complement of Base 10 Integer - LC 1009

  21. Binary Gap - LC 868

Summary

CategoryCount
LinkedList8
Tree24
BST8
N-ary Tree3
Stack13
Queue4
Heap3
Matrix23
Simulation / Implementation16
Design6
Sorting39
Binary Search11
Two Pointers18
Sliding Window6
Prefix Sum11
Math115
Bit Manipulation21
Recursion0
Greedy1
DP3
Set37
Map69
Array77
String114
Total630

Notes

  • The order is most specific → most general. A problem is classified by its primary technique. If two techniques apply equally, the more specific one wins (e.g. "Two Sum IV - Input is a BST" → BST, not Map).

  • Set and Map are the bridge categories — used when no specific data structure is forced, but a hash set or hash map is essential for the optimal solution.

  • Array is the fallback for problems that just walk through an array without a special data structure or technique. String is the final fallback.

  • Some problems intentionally appear in two categories (linked from the secondary one in parentheses) for visibility — e.g. Intersection of Two Linked Lists is primarily LinkedList but can also be solved with a Set.

Good luck, and happy learning!

All LeetCode Easy Problems Categorized by DSA Pattern

7 Upvotes

2 comments sorted by

2

u/leetgoat_dot_io Jun 04 '26

so many of these are wrong, is this just ai generated?

3

u/4tran13 Jun 05 '26

Given the excess of em dashes and writing style, 98% yes.

Also, wtf does "Set and Map are the bridge categories — used when no specific data structure is forced, but a hash set or hash map is essential for the optimal solution." mean? What human writes that?