Questions extraites du site genumsi.inria.fr qui propose des QCM d'entraînement.
On souhaite écrire une fonction recherche_dichotomique(t, v), qui renvoie une position v dans le tableau t, supposé trié, et None si v ne s'y trouve pas : parmi les 4 fonctions ci-dessous, laquelle est correcte ?
def recherche_dichotomique (t, v) :
g = 0
d = len(t) - 1
while g <= d :
m = (g + d) // 2
if t[m] < v :
g = m + 1
elif t[m] > v :
d = m - 1
else :
return m
return None
def recherche_dichotomique (t, v) :
g = 0
d = len(t) - 1
while g <= d :
m = (g + d) // 2
if t[m] > v :
g = m + 1
elif t[m] < v :
d = m - 1
else :
return m
return None
def recherche_dichotomique (t, v) :
g = 0
d = len(t)
while g <= d :
m = (g + d) // 2
if t[m] < v :
g = m + 1
elif t[m] > v :
d = m - 1
else :
return m
return None
def recherche_dichotomique (t, v) :
g = 0
d = len(t) - 1
while g < d :
m = (g + d) // 2
if t[m] < v :
g = m + 1
elif t[m] > v :
d = m - 1
else :
return m
return None
La réponse est : A