题目:写码可以在整型有序数组中查找想要的数字,
找到了返回下标,找不到返回 - 1.
问题分析:这里需要用到折半查找的算法,即将中间元素与想查找的值比较,如果大了就将左边的下标赋值为中间元素下标加1;如果小了就将右边的下标赋值为中间元素加1;
代码演示
if (x > arr[mid])
{
left = mid + 1;
}
else if (x < arr[mid])
{
right = mid - 1;
}
这道题的完整代码
#include<stdio.h>
#include<Windows.h>
#