Maison >développement back-end >Tutoriel Python >Utilisez Python pour apprendre les principes et les scénarios d'application pratiques de l'algorithme de tri par sélection
Apprenez les idées de base et les applications du tri par sélection via Python
Selection Sort est un algorithme de tri simple et intuitif. Son idée de base est de sélectionner le plus petit (ou le plus grand) élément des données à trier. fin de la zone triée, puis sélectionnez l'élément le plus petit (ou le plus grand) parmi les données non triées restantes et placez-le à la fin de la zone triée, et ainsi de suite jusqu'à ce que toutes les données soient triées.
Les étapes spécifiques du tri par sélection sont les suivantes :
Ce qui suit est un exemple de code utilisant Python pour implémenter le tri par sélection :
def selection_sort(arr): n = len(arr) for i in range(n-1): min_idx = i for j in range(i+1, n): if arr[j] < arr[min_idx]: min_idx = j arr[i], arr[min_idx] = arr[min_idx], arr[i] # 测试代码 arr = [64, 25, 12, 22, 11] selection_sort(arr) print("排序后的数组:") for i in range(len(arr)): print(arr[i], end=" ")
Dans le code ci-dessus, selection_sort
函数实现了选择排序算法。在每次循环中,通过min_idx
enregistre l'index de la valeur minimale dans la zone non triée actuelle, trouve la valeur minimale dans la zone non triée dans la boucle interne , et l'échange avec L'opération échange sa position avec le dernier élément de la plage triée. Enfin, grâce à plusieurs boucles, l’ensemble du tableau est trié.
Le résultat de sortie du code ci-dessus est :
排序后的数组: 11 12 22 25 64
La complexité temporelle du tri par sélection est O(n^2), il ne convient donc pas aux situations avec de grandes quantités de données. Cependant, la mise en œuvre du tri par sélection est relativement simple et le code est facile à comprendre, il a donc toujours une certaine valeur d'application dans certains scénarios spécifiques.
Grâce aux exemples de code et aux explications ci-dessus, nous avons appris les idées de base et les applications du tri par sélection. J'espère qu'il vous sera utile de comprendre et de maîtriser l'algorithme de tri par sélection.
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!