給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。
你可以假設陣列中無重複元素。
示例 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
解題思路:
使用二分法,找到序列中點的值,如果比目標值小,說明目標值在後半段,將起點往後挪;如果比目標值大,說明目標值在前半段,將終點往前挪;
**:
public class solution
middle = (start+end)/2;
if(nums[middle]==target)
else if(nums[middle]else
}return start;
}}
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,...