06. 다이나믹 프로그래밍 (DP)
·
알고리즘
Background다양한 문제들을 풀이할 때 컴퓨터를 활용해도 풀이하기 어려운 문제들이 있다.예를 들어, 최적의 해를 구하기 위해 많은 시간 혹은 많은 메모리 공간이 필요한 경우이다.이런 경우 메모리 공간을 조금만 더 사용하면 연산 속도를 비약적으로 증가시킬 수 있으며 그 방법이 이번에 다루는 다이나믹 프로그래밍 (Dynamic Programminig), DP 라고도 표현한다.이것이 코딩테스다 책을 기준으로 간단하게 내용 정리를 해보도록 하겠다.해당 책에서는 피보나치 수열 문제를 이용하여 DP를 이해시켜주고 있다. DP란?다이나믹 프로그래밍으로 문제를 풀이하기 위해서는 아래 조건을 만족해야한다.큰 문제를 작은 문제로 나눌 수 있다.작은 문제에서 구한 정답은 그것을 포함하는 큰 문제에서도 동일하다.그리고 ..