Q1 LeetCode704 二分查找

        

第一次提交错误:if-else语句中第二个if前未加else,导致循环出错

//二分查找 //有序情况下的查找方式,时间复杂度O(logn) //注意左右边界以及停止循环条件left<=right
     

 

class Solution{
    public int search(int[] nums,int target){
        //二分查找 
        //有序情况下的查找方式,时间复杂度O(logn)
        //注意左右边界以及停止循环条件left<=right
        int left=0;
        int right=nums.length-1;
        while(left<=right){
            int mid=(left+right)/2;
            if(nums[mid]>target){
                right=mid-1;}
            else if(nums[mid]<target){
                left=mid+1;}
            else{
                return mid;}
                }
        return -1;
    }
}

 



posted @ 2024-06-01 14:40  清川1  阅读(21)  评论(0)    收藏  举报