题目描述
Java解决方法
class Solution {
public int searchInsert(int[] nums, int target) {
return search(nums,0,nums.length - 1,target);
}
private int search(int[] nums,int start,int end,int target)
{
if(start > end)
{
if(start > nums.length - 1 || nums[start] < target)
{
if(start > nums.length - 1)
{
return start;
}
else
{
return start + 1;
}
}
else if(end < 0 || nums[start] > target && nums[end] < target)
{
return start;
}
}
int mid = (start + end) / 2;
if(nums[mid] == target)
{
return mid;
}
else if(nums[mid] < target)
{
return search(nums,mid + 1,end,target);
}
else
{
return search(nums,start,mid - 1,target);
}
}
}