#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int arr[5] = {1,3,5,7,9};
int to_find = 0;
int left = 0;
int right = sizeof(arr) / sizeof(arr[0])-1;
while (left <= right)
{
int mid = (left + right) / 2;
if (arr[mid] < to_find)
{
left = mid + 1;
}
else if (arr[mid] > to_find)
{
right = mid - 1;
}
else
{
printf("找到了,下标为:%d\n", mid);
break;
}
}
if (left > right)
{
printf("没找到!");
}
printf("\n");
system("pause");
return 0;
}
【C练】写代码可以在整型有序数组中查找想要的数字, 找到了返回下标,找不到返回-1.(折半查找)
猜你喜欢
转载自blog.csdn.net/LXL7868/article/details/88776800
今日推荐
周排行