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 | Révision précédente | ||
|
les_programmes_a_connaitre:algorithmique_premiere:tri_selection [2021/01/12 11:03] rd |
les_programmes_a_connaitre:algorithmique_premiere:tri_selection [2023/01/21 18:34] (Version actuelle) mm |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== Algorithme de tri par sélection:====== | + | ====== Algorithme de tri par sélection ====== |
| ---- | ---- | ||
| + | ====== Qu' | ||
| - | Cet algorithme permet le tri d'un tableau d'entiers en mettant par ordre croissant les nombres présent dans celui-ci. | + | Un algorithme |
| + | |||
| + | ====== Comment ça marche ? ====== | ||
| + | {{: | ||
| + | Dans une Liste à n élément (d’indice 0 à n-1, car on commence par 0 et non par 1), l’algorithme cherche le plus petit entier de la liste et l'échange avec l’élément d’indice 0. | ||
| + | |||
| + | Rechercher le second plus petit élément du tableau, et l' | ||
| + | |||
| + | Continuer de cette façon jusqu' | ||
| + | |||
| + | |||
| + | Le rouge est ici le minimum et le bleu le " | ||
| + | |||
| + | ====== Comment on fait ? ====== | ||
| - | **Algorithme: | ||
| - | {{: | ||
| <code python> | <code python> | ||
| - | i=1 | + | |
| - | while i<len(t): | + | """ |
| - | | + | Algorithme de tri par sélection |
| - | mini=i | + | """ |
| - | | + | |
| - | if t[j]<t[mini]: | + | # Initialisation de Variables |
| - | mini=j | + | t = [1, |
| - | | + | |
| - | | + | """ |
| - | # échanger | + | Objectif : Algorithme de tri par sélection |
| - | i=i+1 | + | Entrée : Liste |
| - | </ | + | Sortie : Liste trié |
| - | {{ : | + | """ |
| - | La méthode par __sélection__ contrairement à celle par insertion regarde en premier | + | def tri_select(t): |
| + | | ||
| + | | ||
| + | | ||
| + | if t[j] < t[min] : # si l' | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | #Programme principal | ||
| + | |||
| + | print(t) | ||
| + | # [1, 6, 9, 3, 2, 0, 7, 5, 8, 4] | ||
| + | |||
| + | print(tri_select(t)) | ||
| + | # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | ===== La Complexité ===== | ||
| + | |||
| + | La complexité, | ||
| + | |||
| + | Dans notre cas, la complexité est de O(n²) on appelle cela une complexité quadratique, | ||
| + | |||
| + | {{: | ||