您的位置:首页 > 其它

二分法查找

2015-06-02 20:11 197 查看
//二分法查找

#include <stdio.h>

int main()

{

int a[10]={1,2,3,4,5,6,7,8,9,10}; //有序数组

int low,high,mid,n=10,x;

printf("Enter x:"); //提示输入x

scanf("%d",&x);

low=0;high=n-1; //开始查找区间为整个数组

while (low<=high) //循环条件

{

mid=(low+high)/2; //中间位置

if(x==a[mid])

break; //查找成功,终止循环

else

if(x<a[mid])

high=mid-1; //前半段,high前移

else

low=mid+1; //后半段,low后移

}

if(low<=high)

printf("Index id %d \n",mid);

else

printf("Not Found\n");

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: