二分查找 模板

来源:互联网 发布:php的laravel框架 编辑:程序博客网 时间:2024/05/19 17:23
#include <iostream>
#include <stdio.h>
#define N 100
int a[N];
using namespace std;
int Find(int x,int l,int r)
{
    while(l<=r){
        int mid = (l+r)/2;
        if(a[mid]==x)  return mid;
        else if(a[mid]>x) r=mid-1;
        else if(a[mid]<x) l=mid+1;
    }
    return -1;
}
int main()
{
    int x,index,n;
    cin>>n;
    for(int i=0;i<n;i++) cin>>a[i];
    cin>>x;
    index=Find(x,0,n);
    if(index == -1)  printf("not found \n");
    else printf("find %d == a[%d]!\n",x,index);
}
原创粉丝点击