탐욕 알고리즘(Greedy Algorithm)은 문제 해결 과정에서 현재 상황에서 가장 최적인 선택을 반복함으로써 전체적인 해답을 구하는 방식입니다. 이러한 방식은 대개 최적해를 보장하지 않지만, 특정한 조건 하에서는 최적해를 보장할 수 있습니다. 탐욕 알고리즘은 빠르고 구현이 비교적 간단하기 때문에 다양한 문제에서 사용됩니다.탐욕 알고리즘이 성공적으로 문제를 해결하기 위해서는 문제 자체가 탐욕적 선택 속성(Greedy Choice Property) 과 최적 부분 구조(Opitmal Substructure) 를 가져야 합니다. 간단히 말해, 탐욕적 선택 속성은 각 단계에서의 최적 선택이 전체 문제에 대한 최적 해결로 이어져야 함을 의미하며, 최적 부분 구조는 부분 문제의 최적해가 전체 문제의 최적해에 기..