[Dynamic Programming] Working Days & Path Counting & Matrix Chain Multiplication
·
CS/Algorithm
Fibonacci NumberF(0) = 0, F(1) = 1, F(n) = F(n-1) + F(n-2) RecursionMemoizationDynamic ProgrammingBy Recursionint F(int n) { if(n F(10)에서 타고 들어가게 되면, 같은 것이 호출되는 경우가 굉장히 많아진다. 노드들이 굉장히 많아지게 되고 엄청나게 느려진다. By Memoizationint FF[1000]int init(){ for (i = 2; i 기록을 해둔 얘들은 바로 리턴이 되기 때문에, 간단한 재귀보다 더 빠르게 계산됨따라서 O(n)에 계산이 가능하다 모든 재귀가 memoization이 되는 것은 아니다. 결과 값만 의미가 있지, 내부 구조가 의미가 있는 경우에는 불가능하다. By Dyna..