Recherche binaire en Python
La recherche binaire divise la zone restante par deux à chaque comparaison.
Qu’est-ce que Recherche binaire en Python ?
La recherche binaire divise la zone restante par deux à chaque comparaison.
Trouver rapidement une valeur dans une liste triée.
Quand l’utiliser ?
- Comprendre les algorithmes et structures de données.
- Observer chaque étape et traiter les cas limites.
- Comparer temps d’exécution et mémoire.
Visualisation de Recherche binaire en Python
O(log n)Utilisez Lecture ou Étape pour suivre chaque comparaison et déplacement de données.
Code d’exemple
main.py
def binary_search(values, target):
low, high = 0, len(values) - 1
while low <= high:
middle = (low + high) // 2
if values[middle] == target:
return middle
if values[middle] < target:
low = middle + 1
else:
high = middle - 1
return -1
print(binary_search([3, 8, 12, 17, 25, 31], 17))
Résultat attendu
3
Fonctionnement
La valeur centrale détermine le côté à conserver. Temps O(log n), mais l’entrée doit être triée.
Modifiez les valeurs et exécutez le programme avec le compilateur Python en ligne CodeUtility, sans installation locale.
Exercices pratiques
Modifiez les entrées et testez les cas limites avant d’utiliser des données plus volumineuses.
- Testez une entrée vide, un élément et des doublons.
- Affichez l’état après chaque étape.
- Comparez les performances avec une autre solution.