一、C++
int binarySearch(vector<int>& nums, int &target, int left, int right) {
int mid = (left + right) / 2;
if (nums[mid] == target)
return mid;
else if (mid == left)
{
if (target < nums[mid])
return 0;
return right;
}
else if (nums[mid] > target)
return binarySearch(nums, target, left, mid);
else
return binarySearch(nums, target, mid, right);
}
int searchInsert(vector<int>& nums, int target) {
return binarySearch(nums, target, 0, nums.size());
}