Middle+
54
# Description du problème # Une séquence d'entiers triés par ordre croissant est donnée. # Il est nécessaire d'implémenter une fonction qui effectue une recherche binaire d'un élément dans cette séquence. # La fonction doit : # 1. Prendre deux arguments : # - une liste triée de nombres, # - une valeur cible à rechercher. # 2. Retourner l'indice de l'élément trouvé, si l'élément est présent. # 3. Retourner -1 si l'élément n'est pas dans la liste. # Exigences # - La solution doit être itérative. # - Il est important de respecter la complexité O(log n). # - Le code doit être écrit en Python 3 et respecter les principes fondamentaux de la propreté du code.
Entreprises à qui on a demandé
devar
Réponse de l'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