#include <stdio.h>
#include <stdlib.h>
int binaryFind(int arr[],int len,int key)
{
int low=0,high=len-1,mid;
while(low <= high)
{
mid=(low+high)>>1;
if(arr[mid]==key) return mid;
if(key < arr[mid]) high=mid-1;
else low=mid+1;
}
return -1;
}
int main(void) {
int s[]={1, 2 ,2, 3 ,5, 7 ,8, 34,44 ,324 };
int len=sizeof(s)/sizeof(int);
printf("find it %d\n",binaryFind(s,len,34));
return 0;
}
二分查找
最新推荐文章于 2023-05-28 13:59:52 发布