본문 바로가기
DSA

피보나치 수열 (반복구조), (순환구조)

by KWONE 2024. 2. 15.

  
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(void)
{
int n;
int a, b, c;
a = 0;
b = 1;
c = 1;
printf("몇번째 항까지 구할까요?: ");
scanf("%d", &n);
for (int i = 0; i <= n; i++) {
printf("%d, ", a);
c = a + b;
a = b;
b = c;
}
return 0;
}

반복구조

 


  
int fib(int n)
{
if(n==0) return 0;
if(n==1) return 1;
return (fib(n-1)+fib(n-2));
}

순환구조

반복구조가 더 시간복잡도 측면에서 효율적이다.

순환구조는 O(2^n)인 반면 반복구조는 O(n)이다.