方法:二分搜索
class Solution {
public:
int searchInsert(vector<int>& nums, int target) {
return dfs(nums,target,0,nums.size()-1);
}
int dfs(vector<int>& nums, int target,int left,int right){
int a;
if(left==right){
if(nums[left]<target){
return left+1;
}else{
return left;
}
}
int mid=left+(right-left)/2;
if(nums[mid]<target){
a=dfs(nums,target,mid+1,right);
}
else if(nums[mid]>target){
a=dfs(nums,target,left,mid);
}else{
return mid;
}
return a;
}
};
