C Binary Search
Binary search
// w ww . j a v a2 s. c om
#include<stdio.h>
int binary_search(char *items, int count, char key)
{
int low, high, mid;
low = 0; high = count-1;
while(low <= high) {
mid = (low+high)/2;
if(key < items[mid])
high = mid-1;
else if(key > items[mid])
low = mid+1;
else
return mid; /* found */
}
return -1;
}
int main(void){
char *str = "123456";
int index = binary_search(str, 6, '3');
printf("%d",index);
}
The code above generates the following result.