二分查找

来源:互联网 发布:标准偏差计算软件 编辑:程序博客网 时间:2024/06/15 23:47

二分查找实现

#include<cstdio>const int N=100000;int binaryseach(int a[],int n,int aim){int first=0,last=n-1;        //first=0 last=9int mid;while(first<last){mid=(first+last)/2;         //mid 4  mid=1if(a[mid]<aim){first=mid+1;}else if(a[mid]>aim){last=mid-1;          //last=3}else {return mid;}}mid=(first+last)/2;if(a[mid]==aim)return mid;elsereturn -1;}int main(){int n;int a[N];scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d",&a[i]);}int m,temp,ans;scanf("%d",&m);while(m--){scanf("%d",&temp);ans=binaryseach(a,n,temp);if(ans>=0){printf("%d\n",ans+1);}else{printf("No Found!\n");}}}


原创粉丝点击