
bins
By: a guest on Sep 29th, 2010 | syntax:
C | size: 0.64 KB | hits: 135 | expires: Never
#include <stdio.h>
int binSearch(int *src, int size, int key) {
int k = (size / 2) - 1;
if(src[k] == key) return k;
if(src[k] < key) {
for(k = size / 2; k < size; k++) {
if(src[k] == key) return k;
}
}
if(src[k] > key) {
for(k = size / 2; k > 0; k--) {
if(src[k] == key) return k;
}
}
return -1;
}
int main(void) {
int arr[] = {1,2,3,4,5};
int size = sizeof(arr) / sizeof(int);
int val = 0, ret = 0;
scanf("%i", &val);
ret = binSearch(arr, size, val);
if(ret < 0) printf("Elemento não encontrado\n");
else printf("Elemento encontrado: %i\n", arr[ret]);
return 0;
}