Sobes.tech
Назад к вопросам
Middle+
2

# Описание задачи # Дана отсортированная по возрастанию последовательность целых чисел. # Необходимо реализовать функцию, выполняющую бинарный поиск элемента в этой последовательности. # Функция должна: # 1. Принимать два аргумента: # - отсортированный список чисел, # - целевое значение для поиска. # 2. Возвращать индекс найденного элемента, если элемент присутствует. # 3. Возвращать -1, если элемент отсутствует в списке. # Требования # - Решение должно быть итеративным. # - Важно соблюсти сложность O(log n). # - Код должен быть написан на Python 3 и соответствовать базовым принципам чистоты кода.

Компании, где спрашивали
devar

Ответ от нейросети

sobes.tech AI

python from typing import List

def binary_search(arr: List[int], target: int) -> int: left, right = 0, len(arr) - 1 while left <= right: mid = left + (right - left) // 2 if arr[mid] == target: return mid elif arr[mid] < target: left = mid + 1 else: right = mid - 1 return -1

Пример использования:

arr = [1, 3, 5, 7, 9]

print(binary_search(arr, 5)) # Выведет 2

print(binary_search(arr, 6)) # Выведет -1