Algorithm review template: turn “I solved it once” into “I own the method”
After each problem, record:
ARCHIVE / 21
Reusable methods, open questions, and notes grounded in real work.
After each problem, record:
The right roadmap is not just difficulty progression. It is capability progression.
Backtracking becomes stable when three things are clear:
Complexity intuition is the ability to look at an idea and quickly ask:
Binary search is not mainly about a loop template.
Graph problems feel messy when the model is vague.
Projects often stall not because people are idle, but because the work is not split clearly enough.
Small projects often become chaotic not because they are large, but because they start without boundaries.
A large share of DP problems are structured around comparing choices under a constrained state.
Monotonic stacks are powerful when you need the first larger or smaller element to the left or right, without rescanning for every position.
Useful classification is not about saying “this is a binary search problem”. It is about seeing the structural signal early enough to choose the right first direction.
The real value of AI starts when it becomes a stable part of the work loop.
Sliding window is valuable when a continuous interval can be maintained incrementally instead of recomputed from scratch.
The safest starting point for DP is a plain sentence:
Many people do not struggle because they are incapable. They struggle because every solved problem disappears from memory too quickly.
Tree problems become clearer once you can say:
Two pointers are useful when moving one boundary can eliminate a large set of impossible combinations.
Architecture matters when:
Memoization is often the easier bridge when you are still understanding the recursive structure.
DP often feels slippery because people memorize formulas before they understand state meaning and transition completeness.
Linked list problems often fail because relationships are modified before the next safe reference is preserved.