#include<iostream> //二分查找binary search
using namespace std;
int main()
{
//定义数组
int array[] = { 1,2,13,19,20,22,41,55,68,72,81,98 };
int targetNumber; //要查找的数字,查找结果
int arrLength = sizeof(array) / sizeof(array[0]); //获得数组长度
printf("请输入在一下数组中要查找的数字\n");
//编写代码打印数组的内容
for(int i = 0; i < arrLength; i++)
printf("%d ",array[i]);
printf("\n");
scanf("%d",&targetNumber);
//查找
int low = 0,high = arrLength - 1,index = -1;
while(low <= high)
{
int mid = (high + low) / 2;
if(array[mid]==targetNumber)
{
index = mid;
break;
}
else if(array[mid] < targetNumber) low = mid + 1;
else high = mid - 1;
}
if(index == -1) printf("没有找到数字%d。",targetNumber);
else printf("找到了,%d是第%d个数字。",targetNumber,index);
return 0;
}
在顺序有序表中实现二分查找的算法。
最新推荐文章于 2023-07-01 21:51:39 发布
本文详细介绍了如何在C++中使用二分查找算法对整数数组进行搜索,通过示例展示了输入目标数字后查找其在给定数组中的位置。

922

被折叠的 条评论
为什么被折叠?



