35 搜尋插入位置

2021-09-08 20:19:18 字數 723 閱讀 6701

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

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

示例 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

這道題就是最普通的二分法加入了查詢需要插入的位置。如果陣列中有我們需要查詢的元素,我們能夠直接得到它的下標;如果沒有我們需要查詢的元素,迴圈的最後一次得到的就是它的位置(待查詢元素比陣列中所有元素都大,則返回陣列最後乙個元素+1的位置)

class

solution

else

if(nums[mid]

>target)

else}if

(nums[right]

else}}

;

看了大神**優化8ms:

class

solution

else

if(target < nums[mid]

)else

}return lt;}}

;

35 搜尋插入位置

給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。你可以假設陣列中無重複元素。示例 1 輸入 1,3,5,6 5 輸出 2 示例 2 輸入 1,3,5,6 2 輸出 1 示例 3 輸入 1,3,5,6 7 輸出 4 示例 4 輸入...

35 搜尋插入位置

給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。你可以假設陣列中無重複元素。示例 1 輸入 1,3,5,6 5 輸出 2 示例 2 輸入 1,3,5,6 2 輸出 1 示例 3 輸入 1,3,5,6 7 輸出 4 示例 4 輸入...

35 搜尋插入位置

給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。你可以假設陣列中無重複元素。示例 1 輸入 1,3,5,6 5 輸出 2示例 2 輸入 1,3,5,6 2 輸出 1示例 3 輸入 1,3,5,6 7 輸出 4示例 4 輸入 1,...