Binary Search
二叉搜索
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
class Solution { public int search(int[] nums, int target) { int lo = 0; int hi = nums.length - 1; while(lo <= hi) { int mid = lo + (hi - lo) / 2; if(nums[mid] == target) return mid; else if(nums[mid] < target) lo = mid + 1; else hi = mid - 1; } return -1; } } |