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;
}

이진 탐색 알고리즘의 재귀 구현
열혈 자료구조 - 1-2. 알고리즘의 성능 분석 방법(3)
이진 탐색 알고리즘의 시간복잡도 - 이진 탐색 알고리즘 : 순차 탐색보다 훨씬 좋은 성능을 보이지만 정렬되어 있어야 한다는 제약이 있음. 정렬의 기준은 상관 없음 - 이진 탐색 알고리즘의 순
1d1cblog.tistory.com
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 |