您的位置:首页 > 其它

二分查找模板

2015-03-09 15:52 239 查看
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int a[1000100];
int search(int left,int right,int v)
{
    int mid=(left+right)/2;
    if(left>right) return -1;
    if(a[mid]==v) return mid;
    else if(a[mid]<v) return search(mid+1,right,v);
    else  return search(left,mid-1,v);
}
int main()
{
    int num,l;
    cin>>num>>l;
    for(int i=1;i<=num;i++)
        cin>>a[i];
        sort(a+1,a+num+1);
        cout<<search(0,num,l)<<endl;
    return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: