Part I · Foundations, Programming and Algorithmic Thinking
7. Foundational Problem-Solving Patterns
8 lessons•45 topics•Beginner
8 of 8 lessons published
7.011 animated
Frequency and counting
- Frequency arrays
- Frequency maps
- Histograms
- Character counts
- Distinct elements
- Counting duplicates
7.022 animated
Prefix and suffix techniques
- Prefix sum
- Prefix product
- Prefix XOR
- Suffix sum
- Difference array
- Range sum
- Range update
7.034 animated
Two-pointer techniques
- Opposite ends
- Same direction
- Fast and slow
- Partitioning
- Two-sum sorted
- Deduplication
7.045 animated
Sliding windows
- Fixed-size windows
- Variable-size windows
- At-most-K constraints
- Exact-K via subtraction
- Minimum covering window
7.055 animated
Monotonic structures
- Next greater
- Next smaller
- Previous greater
- Monotonic stacks
- Monotonic queues
- Window minimum/maximum
7.062 animated
Sorting as a pattern
- Sort then scan
- Group equals
- Meeting intervals
- Sweep sorted events
- Sorting with custom key
7.074 animated
Counting and searching answer
- Feasibility check
- Monotone predicate
- Binary search on answer
- Greedy feasibility
- Precision binary search
7.083 animated
State and invariants
- Loop invariants
- Maintaining counts
- Window invariant
- Pointer movement proof
- Correctness check