A greedy algorithm builds an answer by always taking the choice that looks best right now. It is fast, but it is only correct when the problem has the right structure; an exchange argument is the usual way to prove it.
Greedy algorithm
Making the locally best choice at each step and never revisiting it.