C18 : QCM

Question

La fonction mystère suivante prend en argument un tableau d'entiers.

def mystere(t):
	for i in range(len(t) - 1):
		if t[i] + 1 != t[i+1]:
			return False
	return True

À quelle condition la valeur renvoyée par la fonction est-elle True ?

Question

On considère la fonction suivante :

def f(x,L):
    i = 0
    j = len(L)-1
    while i < j:
        k = (i+j)//2
        if x <= L[k]:
            j = k
        else:
            i = k + 1
    return i

Question

Quel est le coût d'un algorithme de tri par insertion ?

Question

Combien d’échanges effectue la fonction Python suivante pour trier un tableau de 10 éléments ?

def tri (tab) :
    for i in range (1, len(tab)):
        for j in range (len(tab) - i):
            if tab[j]>tab[j+1]:
                tab[j],tab[j+1] = tab[j+1], tab[j]

Question

Pour trier par sélection une liste de 2500 entiers, le nombre de comparaisons nécessaires à l’algorithme est de l’ordre de :

Question

Un algorithme de tri d’une liste d’entiers est implémenté de la façon suivante :

def trier(L) :
	for i in range(len(L)):
	indice_min = i
	for j in range(i+1, len(L)):
		if L[j] < L[indice_min] :
			indice_min = j
		L[i], L[indice_min] = L[indice_min], L[i]
	return L

Quelle est l'affirmation exacte ?