//遍历法实现二分查找
int BinarySearch(int a[],int len,int value)
{
int low = 0;
int high = len-1;
while(low <= high)
{
int mid = (low + hig)/2;
if(a[mid] == value)
{
return mid;
}
else if(a[mid] > value)
{
high = mid - 1;
}
else
{
low = mid + 1;
}
}
return -1;
}
//递归法实现二分查找
int BinarySearch(int a[],int low,int high,int value)
{
if(high > low)
{
return -1;
}
int mid = (low+high)/2;
if(a[mid] == value)
{
return mid;
}
else if(a[mid] > value)
{
return BinarySearch(a,low,mid-1,value);
}
else
{
return BinarySearch(a,mid+1,high,value);
}
}
二分查找算法
最新推荐文章于 2024-09-18 23:47:54 发布