二分查找

二分查找也是分治策略和递归一个重要的实例。对于一个有序的数组,二分查找的时间复杂度是O(logn)

int binarysearch(int a[],int s,int e,int k)

{

    int mid =(s+e)/2;

    if(k==a[mid])

        return mid;

    else if(k<a[mid])

    {



        return binarysearch(a, s, mid, k);

    }

    else

        return binarysearch(a, mid+1, e, k);

}

 

你可能感兴趣的:(二分查找)