tn.اتعلّم

Tri à Bulles

Bubble Sort — Visualiseur
Comparaisons
0
Échanges
0
Passe
Non trié
Actif
Comparé
Trié
Terminé
Passe /

✓ Tableau trié !

— comparaisons · — échanges

12
Appuyez sur Démarrer pour lancer la simulation.
Historique des passes
Aucune passe complétée.
PROCEDURE TriBulle(@T : tab, n : entier)
    REPETER 
      passe  0
      échangé  FAUX
      POUR i De 0 à n - passe - 2 FAIRE
        // Comparer deux éléments adjacents
        SI T[i] > T[i + 1] ALORS
          // Échanger
          temp      T[i]
          T[i]      T[i + 1]
          T[i + 1]  temp
          échangé   VRAI
        FIN SI
      FIN POUR
      // Optimisation : à chaque itération le plus grand élément est poussé vers la droite 
      passe  passe + 1        
    JUSQU'À échangé = FAUX OU  passe = (n - 1)
    FIN
    
def tri_bulle (T, n):
      passe = 0
      echange = True
      while echange == True and passe < (n - 1):
          echange = False
          for i in range (n - passe - 1):
              # Comparer deux éléments adjacents
              if T[i] > T[j + 1]:
                  # Échanger
                  temp = T[i]
                  T[i] = T[i + 1]
                  T[i + 1] = temp
                  echange = True
          # Optimisation : 
          passe = passe + 1

      # ── Exemple d'utilisation ──────────────────────────────────────────
      données = [64, 34, 25, 12, 22, 11, 90]
      print("Avant :", données)
      tri_bulle(données, 7)
      print("Après :", données)
      # → Après : [11, 12, 22, 25, 34, 64, 90]