728x90
피보나치 수열의 재귀 구현
- 피보나치 수열의 구성 : 수열의 n번째 값 = 수열의 n-1 번째 값 + 수열의 n-2 번째 값
int Fibo(int n)
{
printf("func call param %d \n", n);
if(n==1)
return 0;
else if(n==2)
return 1;
else
return Fibo(n-1)+Fibo(n-2);
}
int main(void)
{
printf("Fibonacci 7 = %d\n",Fibo(7));
return 0;
}
이진 탐색 알고리즘의 재귀 구현
int BSearchRecur(int ar[], int first, int last, int target)
{
int mid;
if(first > last)
return -1; // -1의 반환은 탐색의 실패를 의미 (탈출 조건)
mid = (first+last) / 2; // 탐색대상의 중앙을 찾는다.
if(ar[mid] == target)
return mid; // 검색된 타겟의 인덱스 값 반환
else if(target < ar[mid])
return BSearchRecur(ar, first, mid-1, target);
else
return BSearchRecur(ar, mid+1, last, target);
}
728x90
'Programming > Data Structure' 카테고리의 다른 글
열혈 자료구조 - 3-1. 추상 자료형 (0) | 2020.12.03 |
---|---|
열혈 자료구조 - 2-3. 하노이 타워 (0) | 2020.11.29 |
열혈 자료구조 - 2-1. 함수의 재귀적 호출의 이해 (0) | 2020.11.29 |
열혈 자료구조 - 1-2. 알고리즘의 성능 분석 방법(4) (0) | 2020.11.29 |
열혈 자료구조 - 1-2. 알고리즘의 성능 분석 방법(3) (0) | 2020.11.29 |