리그캣의 개발놀이터

optimal substructure - 피보나치 수 본문

알고리즘/백준

optimal substructure - 피보나치 수

리그캣 2018. 2. 1. 22:19

피보나치 수를 구하다 보면

겹치는 호출이 생기게 된다



이럴땐 다음과 같이 메모하여 저장해 줄 수 있다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
int memo[100];
 
 
int fibonacci(int n){
 
    if (n <= 1){
 
    return n;
 
    } else {
 
        if(momo[n]>0){
 
            return memo[n];
 
        }
 
    memo[n] = fibonacci(n-1+ fibonacci(n-2);
 
    return memo[n]
 
    }
 
}
cs


Comments