#include<stdio.h>
void fun(int n, int arr[], int size){
int left = 0;
int right = size - 1;
while(left <= right){
int mid = (left + right) / 2;
if(n > arr[mid]){
left = mid + 1;
}else if(n < arr[mid]){
right = mid - 1;
}else{
printf("找到了是%d\n", mid + 1);
break;
}
}
if(left > right){
printf("-1\n");
}
}
int main(){
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
int size = sizeof(arr) / sizeof(arr[0]);
int n = 12;
fun(n, arr, size);
return 0;
}
着重复习:定义一个函数可以在整型有序数组中查找想要的数字, 找到了返回下标,找不到返回-1.(折半查找)
猜你喜欢
转载自blog.csdn.net/Huwence/article/details/94358224
今日推荐
周排行