Week 7 Cold Revisit

This Friday, before you start any new work, re-solve two earlier problems cold. This is principle 5 (spaced repetition), and it is not optional review. The point is to fire the recognition reflex from a blank page: a problem you solved weeks ago, with no notes and no prior code in front of you, is the only honest test of whether the pattern stuck or just the answer did.

Neither problem this week is a tree problem, and that is deliberate. The cold revisit trains recognition across the whole course, not this week’s pattern. The skill being tested is “see a fresh statement, name the pattern, reach for it”, and that skill only counts if you do not already know which week’s box the problem came from.

The rules

  • No notes, no prior code open, no AI, no Discuss tab. A blank editor and the problem statement.
  • Name the pattern first. Before you write anything, say out loud (or in a comment) what pattern this is and why. Do this before you peek at which week it came from; recognizing it cold is the whole exercise.
  • The 25-minute struggle floor applies, per problem, exactly as on a new problem. If you blow past it, take the hint ladder one rung at a time.
  • Debrief each one with the five questions, in the commit message, and log the outcome (solved cold? needed hints? which rung?) in .tutor/revisit-log.md with the date. The log is how you and the tutor see which patterns are fading.

The two problems

  1. Valid Palindrome (Week 2, Two Pointers). Spec: ../week-02-two-pointers/practice/valid-palindrome/. A blind re-solve. Do not reread the Week 2 notes; reach the “same from both ends” cue on your own, then decide whether you walk two pointers in place or build a cleaned copy, and know which one hits the space target.

  2. Generate Parentheses (Week 4, Stacks). Spec: ../week-04-stacks/practice/generate-parentheses/. A blind re-solve, same rules. The recognition you are after: this is a build-every-valid-string search, and the two rules (when may I add an open bracket, when may I add a close bracket) are the whole solution. Notice in your debrief whether you saw that faster this time than the first.

Why these two, this week

Both are from before the recursion-heavy middle of the course, so they stretch your recognition backward while this week’s tree material is fresh. Generate Parentheses in particular rhymes with trees: it is a recursive search that builds partial answers and only extends legal ones, which is the same muscle you used on the canonical’s recursion. Seeing that rhyme yourself, without being told, is exactly the cross-pattern recognition the Friday revisit is built to grow.

After both are done and logged, you have met the cold-revisit obligation for Week 7. Then, and only then, move on to the Week 8 setup.