二分查找(LeetCode #704)

tech2025-01-15  8

二分查找(LeetCode #704)

解题思路

基本的二分搜索

搜索区间为[left, right],所以终止条件为left<=right

为了防止溢出,使用mid = left + (right - left) / 2

代码

class Solution { public int search(int[] nums, int target) { int left = 0; int right = nums.length - 1; int mid = 0; while(left <= right) { mid = left + (right - left) / 2; if(nums[mid] == target) return mid; else if(nums[mid] < target) left = mid + 1; else if(nums[mid] > target) right = mid - 1; } return -1; } }
最新回复(0)