The greedy idea, when it works and when it fails, activity selection, fractional knapsack, and building a Huffman code with the number of bits saved.