Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | Prochaine révision Les deux révisions suivantes | ||
les_programmes_a_connaitre:algorithmique_premiere:tri_selection [2022/12/29 16:51] mm |
les_programmes_a_connaitre:algorithmique_premiere:tri_selection [2022/12/29 17:02] mm |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | #Tri par selection | + | ====== Algorithme de tri par sélection ====== |
+ | ---- | ||
+ | |||
+ | =====C' | ||
+ | |||
+ | Cet algorithme permet le tri d'un tableau d' | ||
+ | |||
+ | **Algorithme: | ||
+ | {{: | ||
+ | <code python> | ||
+ | """ | ||
+ | Entrée : tab : tableau/ | ||
+ | Sortie : tab : tableau/ | ||
+ | Objectif : Trié le tableau tab, avec la méthode par sélection | ||
+ | """ | ||
+ | |||
+ | def tri_selection(tab): | ||
+ | |||
+ | for i in range(len(tab)): | ||
+ | |||
+ | 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 | ||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | </ | ||
+ | {{ : | ||
+ | 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é.__ |