CS/🌌 알고리즘

동적 계획법(DP, Dynamic Programming) 복잡한 문제를 간단한 여러 개의 문제로 나누어 푸는 방법을 말한다. 부분 문제 반복과 최적 부분 구조를 가지는 알고리즘을 일반적인 방법에 비해 더욱 적은 시간 내에 풀 때 사용한다. DP를 사용하는 이유(조건 정리) 우선 DP를 배우고자 하는 사람들은 DP 문제를 접하고 나서 온 것일것이다. 그럼 가장 기초적인 궁금증 도데체 왜 DP를 사용하는 것일까? 만약 우리가 문제를 푸는 과정에서 재귀 함수를 사용하는 경우가 분명히 존재한다. 재귀의 경우 같은 로직을 여러번 반복하기 때문에 굉장히 비효율적인 계산을 하게 된다 가장 대표적인 재귀문제 피보나치 수열을 예로 들어보자 int fibo(int n) { if (n
늦은산책
'CS/🌌 알고리즘' 카테고리의 글 목록