Binary Search
Easy
Array
Binary Search
Given an array of integers `nums` which is sorted in ascending order, and an integer `target`, write a function to search `target` in `nums`. If `target` exists, then return its index. Otherwise, return `-1`. You must write an algorithm with `O(log n)` runtime complexity.
Example 1
Input: nums = [-1,0,3,5,9,12], target = 9
Output: 4
Example 2
Input: nums = [-1,0,3,5,9,12], target = 2
Output: -1

Constraints

  • 1 <= nums.length <= 10⁴
  • -10⁴ < nums[i], target < 10⁴
  • All the integers in nums are unique.
  • nums is sorted in ascending order.
Time Complexity
O(log n)
Space Complexity
O(1)
14
Case 1
Input: [-1,0,3,5,9,12] 9
Expected: 4