1. 개념
   이 수열은 기본적으로 자연의 황금비율을 설명할 때 가장 많이
   쓰이는 수열입니다.
   수열이 커지면 커질수록 황금비율(1.618)에 근접하게 됩니다.

   한 쌍의 토끼가 매월 한 쌍의 토끼를 낳고, 태어난 한 쌍의 토끼가
   다음 달부터 한 쌍의 토끼를 매월 낳기 시작한다면, 처음 한 쌍의
   토끼로부터 1년간 합계 몇 쌍의 토끼가 태어날 것인가?

2. 특징
   "해당 수와 전의 수를 더한 수를 다음 수로 나타낸 것"
   ex) 데이지 꽃, 코스모스/나뭇가지의 성장

3. 복잡도
   a. 루프를 이용한 구현 : O(n)
   b. 재귀를 이용한 구현 : O(n^2)

4. 구현
   a. 루프를 이용한 구현
      int forfibo(int n)
      {
           int i, tmpe = 0;
           int firstnumber = 0;
           int secondnumber = 1;

           if( n <= 1)
               return n;
          else {
               for( i = 2; i <= n; i++) {
                    temp = firstnumber + secondnumber;
                    firstnumber = secondenumber;
                    secondnumber = temp;
              }
              return secondnumber;
         }
    
}

    b. 재귀를 이용한 구현
       int refibo(int n)
      {
          
if( n <= 1)
               return ;
           else
               return  refibo(n - 1) + refibo(n - 2);
     
}

'IT > 알고리즘' 카테고리의 다른 글

스트링에 대한 permutation을 구하는 알고리즘  (0) 2008.07.15
mmap (메모리맵)  (0) 2008.07.08
문자열을 뒤집는 프로그램  (0) 2008.07.08
call by value vs. call by reference  (0) 2008.07.08
C 프로그램에서 데이터형  (0) 2008.07.08
블로그 이미지

쩐의시대

나답게 살아가고 나답게 살아가자

,