当循环结束时,如果没有找到target,那么low一定停target应该插入的位置上,high一定停在恰好比target小的index上。
public class Solution {
public int searchInsert(int[] nums, int target) {
if(nums == null || nums.length == 0){
return 0;
}
int i=0, j=nums.length-1;
while(i<=j){
int m = i + (j-i)/2;
if(target == nums[m]){
return m;
}else if(target < nums[m]){
j = m - 1;
}else{
i = m + 1;
}
}
return i;
}
}