解题思路:
利用左侧二分查找,返回的位置就是按顺序应该插入的顺序。
class Solution {
public int searchInsert(int[] nums, int target) {
if(nums.length == 0 ) return -1;
int left = 0;
int right = nums.length - 1; //两端都闭的情况,下面更新right和left都-1
while(left <= right){ //right 为nums.length - 1
int mid = left + (right - left) / 2;
if(nums[mid] >= target){
right = mid - 1;
}else{
left = mid + 1;
}
}
return left;
}
}