LeetCodeHot100_35——《搜索插入位置》
解题思路:这道题一看就是二分法,还是先定义左右指针,遍历寻找target,如果找不到target,那么就需要判断是不是在左右指针中间。
具体代码:
int searchInsert(vector<int>& nums, int target) {
int left = 0, right = nums.size()-1;
if (target > nums[right]) { return right + 1; }
if (target < nums[left]) { return 0; }
while (left<=right)
{
int mid = left + (right - left) / 2;
if (nums[mid]==target)
{
return mid;
}
if (nums[mid]<target)
{
left = mid + 1;
}
else
{
right = mid - 1;
}
}
return left;
}