피보나치 수열을 구하는 문제를 동적 계획법으로 구현해보자.
function fibonacci(n, prevalue = []) {
//이미 수행한 연산이면 저장된 값 불러오기
if(prevalue[n] !== undefined) return prevalue[n]
let result;
if(n <= 1) {
result = n;
}else {
result = fibonacci(n-2, prevalue) + fibonacci(n-1, prevalue);
}
//수행한 연산은 배열 prevalue에 n 인덱스 자리에 저장
prevalue[n] = result;
return result
}
참고자료
동적계획법, 나무위키