题目描述
解题思路
- 首先,我们得到一个数组和一个target值
- 我们记录这个数组的长度。默认他就是最后要插入一个元素的位置
- 我们再用二分查找,查找出nums[mid]>=target
- 记录mid
- 循环完毕之后将记录mid的ans返回
代码实现
class Solution {
public:
int searchInsert(vector<int>& nums, int target) {
int ans=nums.size();
int l=0,r=nums.size()-1;
while(l<=r){
int mid=(l+r)>>1;
if(nums[mid]>=target){
ans=mid;
r=mid-1;
}else{
l=mid+1;
}
}
return ans;
}
};