class Solution {
public:
int searchInsert(vector<int>& nums, int target) {
int k=nums.size();
if(target>nums[k-1])
return k;
else if(target<nums[0])
return 0;
return ex(nums,target,0,k);
}
int ex(vector<int>& nums, int target,int l,int r)
{
int u=(l+r)/2;
if((r==l+1||l==r+1)&&target!=nums[l]&&target!=nums[r])
return r;
if(nums[u]==target)
return u;
else if(nums[u]>target)
{
return ex(nums,target,l,u);
}
else
{
return ex(nums,target,u,r);
}
}
};
二分法, 然后特判一下不存在的