Дан отсортированный по возрастанию массив целых чисел nums и целое число target. Найдите индекс target в массиве. Если target отсутствует, верните -1.
Решение должно работать за O(log n).
def binary_search(nums: list[int], target: int) -> int:
binary_search([-1, 0, 3, 5, 9, 12], 9) → 4
binary_search([-1, 0, 3, 5, 9, 12], 2) → -1
- 1 ≤ len(nums) ≤ 10⁴
- -10⁴ ≤ nums[i], target ≤ 10⁴
- Все элементы уникальны
- nums отсортирован по возрастанию
nums = [-1,0,3,5,9,12]target = 94nums = [-1,0,3,5,9,12]target = 2-1nums = [5]target = 50