Dynamic Programming(동적계획법) vs Divide and Conquer(분할 정복)
·
Algorithm/Theory
Dynamic Programming(동적계획법)과 Divide and Conquer(분할 정복)의 차이를 알아보자. 차이를 알아보기에 앞서 동적계획법을 알아보자. Dynamic Programming(동적 계획법) Dynamic Programming은 최적화와 연관이 있어, 'Dynamic Optimization'으로 불리기도 한다. 그러면, Dynamic Programming이 도대체 성능과 어떠한 연관이 있는 것일까? Dynamic Programming 알고리즘은 복잡해 보이는 문제를 하위의 작은 문제들로 쪼개고, 하위 문제들의 결과를 별도의 저장공간에 저장을 한다. 이렇게 함으로써, 동일한 하위 문제가 나왔을 때 중복해서 계산을 할 필요가 없도록 한다. 좀 더 나은 이해는 이전 포스팅인 피보나치 문제..