学习目标:
解题过程记录:
704. 二分查找(左闭右闭区间写法)
class Solution {
public int search(int[] nums, int target) {
int left = 0;
int right = nums.length - 1;// 定义target在左闭右闭的区间里,[left, right]
while (left <= right){
// 当left==right,区间[left, right]依然有效,所以用 <=
int mid = left + (right - left) / 2;//防止(left + right) / 2 越界
if(target == nums[mid]){
return mid; // 数组中找到目标值,直接返回下标
}
else if (target > nums[mid]) {
left = mid + 1; // target 在右区间,所以[middle + 1, right]
}else {
right