기타
Dynamic Programming
Dynamic Programming 동적계획법이란: 큰 문제를 작은 문제로 나누어 푸는 방법 언제 쓰는가? 부분 문제 반복 및 최적 부분 구조를 가지고 있는 알고리즘에 사용 최단 경로 문제, 행렬의 제곱 문제 등의 최적화에 사용 왜 쓰는가? 알고리즘을 일반적인 방법에 비해 더 적은 시간 내에 풀기 위함이다. 동적 계획법은 문제를 해결하기 위한 모든 방법을 검토, 그 중 최적의 풀이법을 찾아냄에 있어 효율적 어떻게 쓰는가? 일반적으로 주어진 문제를 풀기 위해, 문제를 여러 하위 문제로 나누어 푼다. 여러 하위 문제를 푼 후, 그 해결책을 저장한다. 이 후 같은 하위 문제가 나왔을 경우 이전의 해결책으로 정리한다. 예를 들어 피보나치 수열을 보자. 일반적인 피보나치 수열의 알고리즘은 다음과 같다. funct..
2021. 1. 27. 20:08
최근댓글