#include<iostream>
using namespace std;
void main()
{
int a[] = { 1,5,6,8,10,14,24,35,40,50,70,90 };
int x;
int i = 0, j = 11;
int mid, min, max;
min = 0;
max = 11;
mid = (min + max) / 2;
cout << "请输入要找的数";
cin >> x;
while (1)
{
if (min>max)
{
cout << "未找到这个数" << endl;
break;
}
else if (a[mid] < x)
{
min = mid+1;
mid = (min + max) / 2;
}
else if (a[mid] > x)
{
max= mid-1;
mid = (min + max) / 2;;
}
else if (a[mid]== x)
{
cout << "找到了这个数:" << mid;
break;
}
}
system("pause");
}
看到网上有些代码在输入没有的数时,会造成死循环,所以自己编了一个,与别人一起交流。
二分查找法的一些心得
最新推荐文章于 2023-09-21 18:07:09 发布