Sobes.tech
Middle+
50

# Descripción del problema # Se proporciona una secuencia de números enteros ordenados en orden ascendente. # Es necesario implementar una función que realice una búsqueda binaria de un elemento en esta secuencia. # La función debe: # 1. Tomar dos argumentos: # - una lista ordenada de números, # - un valor objetivo para buscar. # 2. Devolver el índice del elemento encontrado, si el elemento está presente. # 3. Devolver -1, si el elemento no está en la lista. # Requisitos # - La solución debe ser iterativa. # - Es importante mantener la complejidad O(log n). # - El código debe estar escrito en Python 3 y seguir los principios básicos de limpieza de código.

Empresas donde se preguntó
devar

Respuesta de la IA

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