7. 그리디 알고리즘7.1 그리디 알고리즘의 개념그리디 알고리즘(Greedy Algorithm)그리디 알고리즘은 현재 상황에서 가장 좋아 보이는 선택을 반복적으로 해 나가면서 최적해를 찾아가는 알고리즘입니다. 이 알고리즘은 각 단계에서 최선의 선택을 하는 것이 전체 문제에 대한 최적해를 보장한다는 전제하에 작동합니다.그리디 알고리즘의 시간 복잡도는 일반적으로 문제의 구조에 따라 달라집니다. 예를 들어, 선택 정렬은 \(O(n^2)\)의 시간 복잡도를 가지지만, 동전 교환 문제는 \(O(n)\) 또는 \(O(\log n)\)의 시간 복잡도를 가질 수 있습니다.그리디 알고리즘은 주로 최단 경로, 최소 신장 트리, 작업 스케줄링 문제 등에서 많이 사용됩니다.그리디 알고리즘의 역사는 1950년대와 1960년대에..