Recherche dichotomique contre recherche linéaire
Deviner un nombre entre 1 et 1 000 000 prend 20 questions si l'on coupe toujours en deux. Saisissez la taille de la liste et comparez avec un parcours un par un.
- Dichotomie, pire cas
- 20 étapes
- Recherche linéaire, pire cas
- 1 000 000 étapes
- Recherche linéaire, cas moyen
- 500 001 étapes
- Gain au pire cas
- × 50 000
La dichotomie suppose une liste déjà triée.
Comment ça se calcule
La recherche dichotomique compare l'élément cherché au milieu de la liste triée et élimine la moitié à chaque étape : au pire, il faut plancher(log2 n) + 1 étapes. La recherche linéaire parcourt la liste : au pire n étapes, en moyenne environ n / 2 si l'élément est présent.
Questions fréquentes
Pourquoi la liste doit-elle être triée ?
Parce que la dichotomie raisonne sur l'ordre : comparer au milieu ne dit où chercher que si les valeurs sont rangées.
La dichotomie est-elle toujours préférable ?
Pour de petites listes ou une seule recherche, un parcours simple suffit. Trier coûte du temps, qui n'est rentable que si l'on cherche souvent.
Cas fréquents
Des exemples déjà remplis, avec leur explication :
- Deviner un nombre entre 1 et 1 000
- Chercher un mot dans un dictionnaire d'un million d'entrées
- Chercher dans 10 éléments : la dichotomie en vaut-elle la peine ?
- Chercher parmi un milliard d'éléments
Intégrer cet outil sur votre site
Les résultats sont fournis à titre indicatif. Pour aller plus loin, découvrez les sites de la catégorie Sandbox et casse-têtes de l'annuaire et lisez le guide de cette catégorie.
Autres outils
- sortComparaisons : tri simple contre tri fusionCombien de comparaisons pour trier n éléments
- forItérations de boucles imbriquéesCompter combien de fois le corps d'une boucle s'exécute
- fibAppels récursifs de Fibonacci (version naïve)Pourquoi fib(40) fait des centaines de millions d'appels
- ISODate vers ISO 8601 et autres formatsUne date écrite de six façons
- WNuméro de semaine ISO et jour de l'annéeSemaine 53 ? Jour 365 ? Calcul pour une date
- 2^nPuissances de 2 et de 10 : ordres de grandeur2^n exact, nombre de chiffres et équivalent en puissance de 10