二分查找 递归与非递归


int binarysearch(int array[],int low, int high,int target){
    if(low<=high){
        int mid = (low + high)/2;
        if (array[mid]==target){
            return mid;
        }
        else if (array[mid]>target){
            binarysearch(array,low,mid-1,target);
        }
        else{
            binarysearch(array,mid+1,high),target;
        }
    }
    return  -1;
}

int binarysearch(int array[], int low,int high,int target){
    while (low<=high){
        int mid = (low+high)/2;
        if (array[mid]==target){
            return mid;
        } else if ( array[mid]<target){
            low = mid +1;
        }
        else {
            high = mid -1;
        }
    }
    return -1;
}

发布了95 篇原创文章 · 获赞 8 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/ttomchy/article/details/104798577