LeetCode Practice Method

How to Actually Practice LeetCode

Stop staring at problems for hours. The 30-minute method builds real pattern recognition through deliberate practice and spaced repetition.

30:00
Maximum time per problem. Set a timer. No exceptions.

The 30-Minute Method

This is the exact process. Follow it for every single problem.

  1. Read the problem carefully. Identify inputs, outputs, constraints. Write them down.
  2. Identify the pattern. Is this Two Pointer? Sliding Window? HashMap? BFS/DFS? Name it.
  3. Try your approach. Code it up. Talk through your thinking out loud (even alone).
  4. Hit 30 minutes? Stop coding. This is the critical moment. No shame. Move to step 5.
  5. Look at the APPROACH, not the code. Read what pattern it uses and WHY it works. Watch a NeetCode video for the intuition.
  6. Close everything. Implement it yourself. No peeking. Use the approach you just learned to write YOUR code.
  7. Analyze your solution. State the time and space complexity. Explain why this approach is optimal.
  8. Log the pattern. Add it to your tracker: pattern name, problem, confidence level.

Spaced Repetition Schedule

Solving a problem once means nothing. You need to prove you can do it again without help.

Day 1
Solve it
First attempt. Follow the 30-min method above.
Day 3
Try again
No notes. Can you recall the approach and implement it?
Day 7
Final check
If you nail it, it's locked in. If not, restart the cycle.

If you can solve it on Day 7 without help, you've genuinely learned the pattern.

The Claude LeetCode Tutor

Danny's interview-prep skill acts as a tutor: gives hints (not answers), asks you to explain your thinking, catches logical errors, and guides you to the solution yourself.

Get the Interview Prep Skill

Pattern Tracking Template

Track which patterns you've mastered vs. which ones still trip you up. Focus your time on the weak ones.

Pattern Key Insight Status
Two Pointer Sorted arrays, shrink from both ends Strong
Sliding Window Contiguous subarray/substring, expand + shrink Strong
HashMap O(1) lookups, complements, frequency count Strong
BFS / DFS Trees, graphs, level-order vs. depth-first Learning
Binary Search Sorted data, search space reduction Learning
Backtracking All combinations/permutations, prune early Weak
Dynamic Prog. Overlapping subproblems, optimal substructure Weak
Greedy Local optimal = global optimal, sort first Learning
Heap / PQ Top-K, merge sorted lists, scheduling Weak
Stack Matching brackets, monotonic stack, undo Learning

How to use: Copy this into a Notion page or spreadsheet. After each problem, update the status. Focus 80% of your time on "Weak" and "Learning" patterns.

Recommended Resources

The best channels, tools, and lists for building LeetCode pattern recognition.

Quick Tips

Mindset Shifts
  • 1. Not solving a problem is not failure. It's data. Now you know what to study.
  • 2. Understanding WHY beats memorizing HOW. If you can explain it to someone else, you know it.
  • 3. 2 problems/day > 10 problems on Saturday. Consistency builds the neural pathways.
  • 4. Easy problems are not beneath you. They reinforce patterns that show up in mediums and hards.
  • 5. Talk out loud while solving. Interviews require this. Practice it from day one.