그리디(Greedy) 알고리즘
현재 상황에서 가장 좋아 보이는 것만을 선택하는 알고리즘
+ 구현하기 쉽다.
+ 시간 복잡도가 우수하다.
- 항상 최적의 해를 보장하지 못한다.
그리디 알고리즘 수행 과정
1. 해 선택 : 현재 상태에서 가장 최선이라고 생각되는 해를 선택한다.
2. 적절성 검사 : 현재 선택한 해가 전체 문제의 제약 조건에 벗어나지 않는지 검사한다.
3. 해 검사 : 현재까지 선택한 해 집합이 전체 문제를 해결할 수 있는지 검사한다.
전제 문제를 해결하지 못한다면 1번으로 돌아가 같은 과정을 반복한다.
* <Do It! 알고리즘 코딩테스트 with C++편>, <이것이 취업을 위한 코딩 테스트다 with 파이썬>을 참고하였습니다.
728x90
'코딩테스트 > 알고리즘' 카테고리의 다른 글
정렬(Sort) 알고리즘 (0) | 2023.06.13 |
---|---|
투 포인터 알고리즘 (0) | 2023.06.12 |
동적 계획법(Dynamic Programming) 알고리즘 (0) | 2023.06.09 |
DFS(깊이 우선 탐색)와 BFS(너비 우선 탐색) 알고리즘 (0) | 2023.06.07 |
유니온 파인드(Union-Find) 알고리즘 (0) | 2023.06.03 |