etc
[C언어로 해보는 알고리즘]2. 이분 탐색(binary search)
연계중
2016. 6. 12. 03:25
반응형
[C언어로 해보는 알고리즘]2.이분 탐색(binary search)
#include <stdio.h>
#define SIZE 10
#pragma warning(disable:4996)
int main(void){
int a[SIZE] = { 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 };
int M = 0;
int T = 0;
int low = 0;
int high = sizeof(a) / sizeof(a[0]);
high = high - 1;
printf("찾고자 하는 정수 입력 : ");
scanf("%d", &T);
//binary search
for (int n = 0; n < SIZE; n++){
M = (low + (high - 1)) / 2;
if (a[M] == T) break;
else if (T > a[M]) low = M + 1;
else if (T < a[M]) high = M - 1;
else if( T != a[M]) printf("찾고자 하는 정수가 없습니다. \n");
printf("test => %d \n", M);
}
//찾은 값 출력
printf("탐색 결과 : %d이라는 값은 a[%d]중 a[%d]번째에 있습니다. \n", a[M], SIZE-1, M);
return 0;
}
반응형