示例 1:
输入: nums= [-1,0,3,5,9,12], target= 9
输出: 4
解释: 9 出现在 nums中并且下标为 4
示例 2:
输入: nums = [-1,0,3,5,9,12...为什么循环条件是 left 而不是 left <= right?
答:这是因为我们在初始化右边界时使用了 nums.length 而不是 nums.length - 1。...当 left == right 时,搜索区间为空,循环终止。
2. 为什么没有返回 -1的操作?如果数组中不存在目标值怎么办?
答:在返回之前,我们需要检查 nums[left]是否等于目标值。...同时,我们需要确保索引不越界。
3. 为什么更新边界时使用 left = mid + 1 和 right = mid?...答:关键在于处理 nums[mid] == target 的情况时,我们不立即返回,而是缩小搜索区间的上界 right,继续在左侧区间 [left, mid)`中搜索。
5.