Le tri à bulles est l'un des algorithmes de tri les plus simples qui parcourt le tableau donné et compare les éléments adjacents. Si les éléments sont dans le mauvais ordre, ils sont intervertis pour les remettre dans le bon ordre. Ce processus se poursuit jusqu'à ce que l'ensemble du tableau soit trié.
Algorithme:
Étape 1 : Parcourez le tableau plusieurs fois
À chaque itération, comparez les éléments adjacents (i et i + 1)
Étape 2 :Si l'élément actuel (i) est supérieur à l'élément suivant (i + 1), échangez-les
Répétez ce processus jusqu'à ce que tout le tableau soit trié
Complexité temporelle :
O(n^2), car il parcourt le tableau plusieurs fois et effectue des comparaisons et des échanges à chaque itération.
Exemple de code en Python :
def bubble_sort(arr):
pour je dans la plage (len (arr) - 1):
# Parcourez le tableau pour comparer les éléments adjacents
pour j dans la plage (len (arr) - 1 - i):
# Comparez l'élément actuel avec l'élément suivant
si arr[j]> arr[j + 1] :
# Échangez les éléments s'ils sont dans le mauvais ordre
arr[j], arr[j + 1] =arr[j + 1], arr[j]
# Renvoie le tableau trié
retour arr
Exemple:
Saisir:
[5, 3, 1, 2, 4]
Sortir:
[1, 2, 3, 4, 5]
L'algorithme de tri à bulles parcourt le tableau et compare les éléments adjacents. S'ils sont dans le mauvais ordre, ils sont échangés. Ce processus est répété jusqu'à ce que l'ensemble du tableau soit trié.
Voici comment fonctionne l'algorithme dans cet exemple :
Itération 1 :
- Comparez 5 et 3 :échangez-les puisque 5 est supérieur à 3.
- Comparez 3 et 1 :échangez-les puisque 3 est supérieur à 1.
- Comparez 2 et 4 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Le tableau devient :[3, 1, 2, 4, 5].
Itération 2 :
- Comparez 3 et 1 :échangez-les puisque 3 est supérieur à 1.
- Comparez 1 et 2 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Comparez 2 et 4 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Le tableau devient :[1, 2, 3, 4, 5].
Itération 3 :
- Comparez 1 et 2 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Comparez 2 et 3 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Comparez 3 et 4 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Le tableau devient :[1, 2, 3, 4, 5].
Itération 4 :
- Comparez 1 et 2 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Comparez 2 et 3 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Comparez 3 et 4 :Aucun échange nécessaire puisqu'ils sont dans le bon ordre.
- Le tableau reste inchangé.
Après la quatrième itération, le tableau est trié par ordre croissant :[1, 2, 3, 4, 5].
|