La méthode de sélection
peut également être considérée comme un algorithme de tri d'entrée de gamme. Par rapport à la méthode à bulles, sa méthode est plus intelligente. Son point de départ est de « choisir » à chaque fois la meilleure valeur du tableau . est sélectionné, et remplacez les éléments précédents, puis continuez à sélectionner la valeur la plus élevée des éléments restants et répétez l'opération. Personnellement, je pense que l'importance du tri par sélection ne réside pas dans le tri lui-même, mais dans la méthode de sélection et de remplacement, ce qui est très utile pour certains problèmes.
Tri par sélection :
Le tri par sélection est un algorithme de tri simple et intuitif. Voici comment cela fonctionne. Tout d'abord, recherchez le plus petit (grand) élément de la séquence non triée et stockez-le au début de la séquence triée. Ensuite, continuez à rechercher le plus petit (grand) élément parmi les éléments non triés restants, puis placez-le à la fin de la séquence. séquence triée. Et ainsi de suite jusqu'à ce que tous les éléments soient triés. Le principal avantage du tri par sélection concerne le mouvement des données. Si un élément est dans la bonne position finale, il ne sera pas déplacé. Chaque fois que le tri par sélection échange une paire d'éléments, au moins l'un d'entre eux sera déplacé vers sa position finale, donc le tri d'une liste de n éléments nécessite au plus n-1 échanges. Parmi toutes les méthodes de tri qui reposent entièrement sur l’échange pour déplacer des éléments, le tri par sélection est une très bonne méthode.
Python Implémentation :
# selection_sort.py def selection_sort(arr): count = len(arr) for i in range(count-1): # 交换 n-1 次 min = i # 找最小数 for j in range(i, count): if arr[min] > arr[j]: min = j arr[min], arr[i] = arr[i], arr[min] # 交换 return arr my_list = [6, 23, 2, 54, 12, 6, 8, 100] print(selection_sort(my_list))
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!