Ceci est une ancienne révision du document !
Cet algorithme permet le tri d'un tableau d'entiers en mettant par ordre croissant les nombres présents dans celui-ci.
# -*- coding: utf-8 -*- """ Fiche de Révision - Trie par sélection """ # Intialisation de Variable tab = [98, 22, 15, 32, 2, 74, 63, 70] # Fin Initialisation de Variable # Fonction """ Entrée : tab : tableau/list -> non trié Sortie : tab : tableau/list -> trié ( dans l'ordre croissant ) Objectif : Trié le tableau tab, avec la méthode par sélection """ def tri_selection(tab): for i in range(len(tab)): # Répétition pour modifier tout le tableau min = i # Intialisation de Variable for j in range(i+1, len(tab)): # Pour balayer tout le tableau if tab[min] > tab[j]: # Si on trouve un nombre plus petit min = j # Décalage k = tab[i] # Décalage tab[i] = tab[min] # Décalage tab[min] = k # Décalage return tab # Renvoyer tab #Fin Fonction # Programme Principal print(tab) # Intialisation print(tri_selection(tab)) # Lancement de Variable
La méthode par sélection divise tout d’abord le tableau ( liste ) en deux : une partie triée et une autre non triée, pour délimiter cela il y a des bornes ( représenter par des variable, souvent appelés “ debut” et “fin” ). Contrairement à celle par insertion cette méthode cherche le plus petit élément du tableau ( de la partie non trié ) puis cette élément échange sa place avec celui qui est à la première place du tableau non trié et après ce décalage il fera partie de la partie trié.