« Recherche dichotomique » : différence entre les versions

Contenu supprimé Contenu ajouté
DesPsyCHo (discuter | contributions)
m →‎Autre : Lien vers la page "Matrice Judy" suite à la création de la page
8 93f (discuter | contributions)
m Dans le cas ou l'element a chercher n'exsite pas dans le tableau , a un certain moment , m qui est egal a len/2 va etre egal a 0. Dans ce cas le programme va excuter une tache impossible et donc c'est un erreur . Pour l'eviter , on va assumer que l'utlisateur et dans son programme principale vat tester si la valeur renvoyer par la fonction est differentt de -1. Si oui donc la fonction a trouver l'indice d'element a chercher.
Ligne 35 :
len = longueur de liste_triée ;
m = len / 2 ;
si m <> 0 :
si liste_triée[m] = élément :
renvoyer m ;
si liste_triée[m] > élément :
renvoyer recherche_dichotomique_récursive(élément, liste_triée[1:m-1]) ;
sinon :
renvoyer m+recherche_dichotomique_récursive(élément, liste_triée[m+1:len]) ;
sinon :
renvoyer -1;
renvoyer m+recherche_dichotomique_récursive(élément, liste_triée[m+1:len]) ;
 
==== Écriture itérative ====