题目:https://leetcode-cn.com/problems/search-insert-position/
答案:二分查找
public int searchInsert(int[] nums, int target) {
if(nums==null || nums.length == 0){
return 0;
}else if(nums.length==1){
if(target>nums[0]){
return 1;
}else{
return 0;
}
}else{
int start = 0;
int after = nums.length-1;
if(target<=nums[start]){
return 0;
}
if(target>nums[after]){
return after+1;
}
while (start<after){
int mid = (start+after)/2;
if(target<nums[mid]){
after = mid-1;
}else if(nums[mid]<target){
start = mid+1;
}else{
start = mid;
after = mid;
}
}
if(target>nums[start]){
start++;
}
return start;
}
}