容易 搜索插入位置
28%
通过
给定一个排序数组和一个目标值,如果在数组中找到目标值则返回索引。如果没有,返回到它将会被按顺序插入的位置。
你可以假设在数组中无重复元素。
您在真实的面试中是否遇到过这个题?Yes
样例
[1,3,5,6],5 → 2
[1,3,5,6],2 → 1
[1,3,5,6], 7 → 4
[1,3,5,6],0 → 0
public class Solution {
/**
* param A : an integer sorted array
* param target : an integer to be inserted
* return : an integer
*/
public static int searchInsert(int[] A, int target) {
// write your code here
int start = 0;
int end = A.length-1;
while(start<=end)
{
int mid = (start+end)/2;
if(A[mid]<target)
{
start = mid+1;
}
else if(A[mid]>target)
{
end = mid-1;
}
else return mid;
}
return start;
}
}