Guided Lesson Notes
Understanding Greedy Algorithm
Greedy Algorithm focuses on algorithmic reasoning, correctness, and choosing the right structure before writing code. Greedy algorithms make the locally best choice at each step, but students must learn when that local choice is globally valid.
Model: start with inputs and outputs, then decide what information must be remembered at each step.
Invariant: every step must preserve the meaning of the variables and move measurably closer to the goal.
Implementation: pseudocode, traces, helper functions, tests, and complexity checks.
Use Greedy Algorithm when the problem is less about syntax and more about selecting a strategy that scales.
