Dynamic Programming1 다이나믹 프로그래밍(Dynamic Programming) - 메모리를 적절히 사용하여 수행 시간 효율성을 비약적으로 향상시키는 방법 - 이미 계산된 결과(작은 문제)는 별도의 메모리 영역에 저장하여 다시 계산하지 않도록 - 탑다운(top-down) or 보텀업(bottom-up) 방식 다음 조건을 만족할 때 사용 가능 최적 부분 구조 - 큰 문제를 작은 문제로 나눌 수 있으며 작은 문제의 답을 모아 큰 문제를 해결 중복되는 부분 문제 - 동일한 작은 문제를 반복적으로 해결 예시) 피보나치 수 구하기 피보나치는 점화식(인접한 항들 사이의 관계식)으로, 현재의 항을 이전의 항에 대한 식으로 표현 가능 피보나치 수열을 아래와 같은 방법을 활용하여 구할 수 있다. #include using namespace std; // 피보나치 함수(Fibonacci Functio.. 2021. 4. 13. 이전 1 다음