Sobes.tech
Middle+
35

# Descrição do problema # Uma sequência de números inteiros ordenados em ordem crescente é fornecida. # É necessário implementar uma função que realize uma busca binária de um elemento nesta sequência. # A função deve: # 1. Aceitar dois argumentos: # - uma lista ordenada de números, # - um valor alvo para busca. # 2. Retornar o índice do elemento encontrado, se o elemento estiver presente. # 3. Retornar -1, se o elemento não estiver na lista. # Requisitos # - A solução deve ser iterativa. # - É importante manter a complexidade O(log n). # - O código deve ser escrito em Python 3 e seguir os princípios básicos de limpeza de código.

Empresas quando solicitadas
devar

Resposta da IA

sobes.tech IA

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