题目:https://leetcode.com/submissions/detail/51035380/
知识点:
int find_closest_small(vector<int> nums,unsigned int start, int end, int left)
{
if(start < end)
{
int result;
int mid = (start + end)/2;
if(nums[mid] > left)
result = find_closest_small( nums,start, mid - 1, left);
else if(nums[mid] < left)
result = find_closest_small(nums,mid + 1, end, left);
else
return mid;
return result;
}
return start;
}
二分法查找比给定数小的第一个数。
边界问题,及时跳出循环。