Making the locally optimal choice at each stage with the hope of finding a global optimum.
Select the maximum number of non-overlapping activities performed by a single person.
Lossless data compression algorithm that assigns variable-length codes based on frequency.