【LeetCode_35】二分查找:搜索插入位置

題目描述:

給定一個排序數組和一個目標值,在數組中找到目標值,並返回其索引。如果目標值不存在於數組中,返回它將會被按順序插入的位置。你可以假設數組中無重複元素。

樣例:

示例 1:                            示例 2:                                  示例 3:                                    示例 4:

輸入: [1,3,5,6], 5             輸入:[1,3,5,6], 2                    輸入: [1,3,5,6], 7                     輸入: [1,3,5,6], 0
       輸出: 2                            輸出: 1                                  輸出: 4                                     輸出: 0
       示例 3:

代碼:

class Solution {
    public int searchInsert(int[] nums, int target) {
        int low=0,high=nums.length;       
        while(low<high){
            int mid=(low+high)/2;
            if(nums[mid]>target){
                high=mid;
            }else if(nums[mid]<target){
                low=mid;
            }else{
                return mid;
            }
        }
        return low;
    }
}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章