int findValue(int a[], int value, int first, int last)
{
if(first<=last){
int mid=(first+last)/2;
if(value>a[mid])
findValue(a,value,mid+1,last);
else if(value<a[mid])
findValue(a,value,first,mid-1);
else
return mid;
}
else {
return -1;
}
}
int main()
{
int a[7]={1,2,3,4,5,6,9};
int location=findValue(a,5, 0, 6);
if(location>=0){
cout<<"要找的值在位置: "<<location<<endl;
}
else{
cout<<"要找的值不存在。"<<endl;
}
return 0;
}
有序数组的二分查找
最新推荐文章于 2023-04-27 17:11:02 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)