Java實現 LeetCode 35 搜尋插入位置

南 牆發表於2020-02-17

35. 搜尋插入位置

給定一個排序陣列和一個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。

你可以假設陣列中無重複元素。

示例 1:

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

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

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

輸入: [1,3,5,6], 0
輸出: 0

來源:力扣(LeetCode)
連結:https://leetcode-cn.com/problems/search-insert-position
著作權歸領釦網路所有。商業轉載請聯絡官方授權,非商業轉載請註明出處。

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

相關文章