记住一个【小于等于】的模板即可。
int search(int* nums, int numsSize, int target) {
int left = 0;
int right = numsSize - 1; // 减一
while (left <= right) { // 小于等于
int mid = (right + left)/2;
if (nums[mid] < target) {
left = mid + 1; // 加一
} else if (nums[mid] > target) {
right = mid - 1; // 减一
} else {
return mid;
}
}
return -1; // 未找到
}