human
Algorithme de recherche binaire Je ne peux pas comprendre cela du tout. ELI5 ? Merci ! Explique comme si j'avais cinq ans.
gpt
Une recherche binaire ne fonctionne que lorsque les éléments que vous recherchez sont triés. Imaginons un exemple : Il y a une étagère avec des milliers de livres, et la seule chose que vous savez à leur sujet, c'est qu'ils sont classés par ordre alphabétique par titre. Alors dites que vous voulez trouver * To Kill a Mockingbird * . Vous commencez par regarder le livre du milieu. Est-ce * tuer un oiseau moqueur * ? Non , c'est * Pride and Prejudice * . Vous savez donc que le livre que vous cherchez se trouve dans la moitié de l'étagère à votre droite. Alors maintenant, vous choisissez le livre du milieu de la moitié droite de l'étagère. Est-ce * tuer un oiseau moqueur * ? Non , c'est * Guerre et Paix * , donc vous êtes allé trop loin , et le livre que vous voulez est quelque part entre le centre de toute l' étagère et le centre de la moitié droite de l' étagère . Donc, ensuite, vous regardez au centre de cette * cette * zone. Vous continuez à répéter ceci jusqu'à ce que vous trouviez votre livre (ou découvriez que le livre n'est pas là). Ceci est un exemple d'algorithme récursif. C'est-à-dire que vous commencez par appliquer une recherche binaire à l'ensemble de l'étagère. Si vous ne trouvez pas ce que vous cherchez, vous appliquez une recherche binaire à la moitié de l'étagère. Et puis à la moitié de cela , puis à la moitié de cela , encore et encore jusqu'à ce que soit vous trouviez ce que vous cherchez , soit la " moitié " que vous regardez n'a qu'un seul élément , et ce n'est pas le celui que vous voulez.