그리디 알고리즘은 당장 눈 앞에 보이는 최적의 상황만을 쫓는 알고리즘이다.
항상 최적의 결과를 도출하는 것은 아니지만 어느 정도 최적의 해에 근사한 값을 빠르게 구할 수 있다는 장점이 있다.
--> 그냥 이래저래 결과를 도출하자? 이렇게 느껴지긴 한다.
그리디 알고리즘은 탐욕적, 갈망법 기법 등으로 다양하게 불리기도 한다.
내가 동빈나 유투브를 보며 알고리즘을 공부하는데, 거의 이 내용은 동빈나에서 더욱 자세히 설명과 함께 들을 수 있다.
https://www.youtube.com/channel/UChflhu32f5EUHlY7_SetNWw/featured
그리디 알고리즘은 최적의 해를 보장하지 못하는 경우가 더 많다.
#include <iostream>
using namespace std;
int main(void)
{
int n, result = 0;
cin >> n;
result += n / 500;
n %= 500;
result += n / 100;
n %= 100;
result += n / 50;
n %= 50;
result += n / 10;
cout << result;
return 0;
}
'개발 > 알고리즘' 카테고리의 다른 글
깊이 우선 탐색(Depth First Search, DFS) (0) | 2019.06.27 |
---|---|
너비 우선 탐색(Breadth First Search, BFS) (0) | 2019.06.25 |
라빈 카프(Rabin-Karp)알고리즘 (0) | 2019.06.14 |
KMP(Knuth-Morris-Pratt)알고리즘 (0) | 2019.06.14 |
계수 정렬(Counting Sort) (0) | 2019.06.13 |