L'algorithme de tri par sélection trie un tableau en recherchant à plusieurs reprises l'élément minimum (en tenant compte de l'ordre croissant) de la partie non triée et en le plaçant au début. L'algorithme maintient deux sous-tableaux dans un tableau donné.
Programme Python pour le tri par sélection
Le code Python fourni illustre l'algorithme de tri par sélection. Le tri par sélection a une complexité temporelle de O(n^2). À chaque itération, le code trouve l’index de l’élément minimum dans la partie non triée du tableau et l’échange avec l’élément de l’index actuel. Cela trie progressivement le tableau de gauche à droite. L'exemple initialise un tableau, applique la fonction selectionSort pour le trier, puis imprime le tableau trié par ordre croissant. Le tableau trié est obtenu en recherchant à plusieurs reprises le plus petit élément dans la partie non triée et en le plaçant dans sa position correcte, ce qui donne un tableau ordonné : [-202, -97, -9, -2, 0, 11, 45, 88, 747].
Python3
# Selection sort in Python> # time complexity O(n*n)> #sorting by finding min_index> def> selectionSort(array, size):> > >for> ind>in> range>(size):> >min_index>=> ind> >for> j>in> range>(ind>+> 1>, size):> ># select the minimum element in every iteration> >if> array[j] min_index = j # swapping the elements to sort the array (array[ind], array[min_index]) = (array[min_index], array[ind]) arr = [-2, 45, 0, 11, -9,88,-97,-202,747] size = len(arr) selectionSort(arr, size) print('The array after sorting in Ascending Order by selection sort is:') print(arr)> |
>
>Sortir
The array after sorting in Ascending Order by selection sort is: [-202, -97, -9, -2, 0, 11, 45, 88, 747]>
Complexité temporelle : Sur2).
ex du nom d'utilisateur
Espace auxiliaire : O(1).
Veuillez vous référer à l'article complet sur Tri de sélection pour plus de détails!