LeetCode704 Binary Search

    xiaoxiao2023-10-18  176

    题目:

           Given a sorted (in ascending order) integer array nums of n elements and a target value, write a function to search target in nums. If target exists, then return its index, otherwise return -1.

           Example 1:

                   Input: nums = [-1,0,3,5,9,12], target = 9

                  Output: 4

                  Explanation: 9 exists in nums and its index is 4

           Example 2:

                  Input: nums = [-1,0,3,5,9,12], target = 2

                  Output: -1

                  Explanation: 2 does not exist in nums so return -1

    public class BinarySearch { public static int search(int[] nums, int target) { //处理特殊例子 //数组为null或者数组为空 if(nums == null || nums.length == 0) return -1; //实现业务逻辑 int l = 0; int r = nums.length - 1; while(l <= r){ int mid = l + (r - l >> 1); if(nums[mid] == target) return mid; if(target > nums[mid]) l = mid + 1; else r = mid - 1; } return -1; } public static void main(String[] args) { int[] nums = {-1,0,3,5,9,12}; int target = 9; System.out.println(search(nums, target)); } }

     

     

    最新回复(0)