Академический Документы
Профессиональный Документы
Культура Документы
CONST TAILLE=50
TYPE TABL=TABLEAU [TAILLE] DE REEL
PROCEDURETriSélection(VAR T :TABL; TAILLE :ENTIER)
VAR i,pos :ENTIER
DEBUT
POUR i DE 1 A TAILLE -1
FAIRE
pos trouverMin(T ,i) // Plus petit élément du tableau restant
echanger(T,i,pos) // Echanger avec l'élément en position i
FINPOUR
FIN
-------------------------------------------------------------------------------------------------------------
// Fonction retournant l'indice du plus petit élément dans le tableau entre les indices
i et la fin du tableau
FONCTION trouverMin(T:TABL i: ENTIER ):ENTIER
VAR i_Min, j :ENTIER
DEBUT
i_Min i
POUR j DE i_Min +1 A TAILLE
FAIRE
SI T [j] < T[i_Min]
ALORS
i_Min j
FINSI
FINPOUR
RETOURNER( i_Min)
FIN
-------------------------------------------------------------------------------------------------------------
// PROCEDURE échangeant les éléments d'indices i et j dans un tableau
PROCEDURE Echanger (VAR T: TABL; i,j: ENTIER)
VAR Aux :ENTIER;
DEBUT
Aux T[i]
T[i] T[j]
T[j] Aux
FIN
https://fr.wikipedia.org/wiki/Tri_par_s%C3%A9lection#Complexit%C3%A9
https://openclassrooms.com/courses/1160591-le-tri-a-bulles
http://lwh.free.fr/pages/algo/tri/tri.htm
Dans le pire des cas, la complexité du tri à bulles est aussi en O(n²). Le pire des
cas est, pour ce tri, une liste triée en sens inverse. Le meilleur des cas est une
liste triée.
On estime mathématiquement qu'il fait en moyenne n(n-1)/4 opérations pour n
valeurs à trier..
Dans le meilleur des cas, avec des données déjà triées, l'algorithme effectuera seulement n -
1 comparaisons. Sa complexité dans le meilleur des cas est donc en Θ(n).
Sélection :
Dans tous les cas l'algorithme effectuera n(n-1)/2 comparaisons. Sa complexité est donc en
Θ(n2).
https://home.mis.u-picardie.fr/~furst/docs/5-Algorithmes_de_Tri.pdf
Les autres
Complexité de la recherche par dichotomie
dans le pire cas, on continue toujours la recherche dans un sous-intervalle jusqu’`a un
intervalle de taille 1 la taille de l’intervalle diminue de moitié `a chaque itération après k
itération, la taille de l’intervalle est |L| 2 k on a donc k = log2 |L| dans le pire cas l’algorithme a
donc une complexité en temps en O(log n).
Complexité au pire (x n'est pas dans le tableau) : ae+n*(2*ce+ae+oe) = O(n) Complexité au mieux (x
est dans la première case du tableau) : ae+2*ce = O(1)
Rech seq :
Dans cette fonction, on exécute n-1 tests de comparaison. La complexité est donc n-
1 = O(n).
http://www.lita.univ-lorraine.fr/~brucker/cours/algos/