Bubble sort · Tri à bulles
Sorting puts items in order
- Sorting rearranges a list into order — smallest to largest, say.
- Bubble sort is the standard method named in the syllabus.
- It compares neighbours and swaps any that are the wrong way round.
Le tri place les éléments dans l'ordre
- Le tri réorganise une liste par ordre croissant — du plus petit au plus grand, par exemple.
- Le tri à bulles est la méthode standard mentionnée dans le programme officiel.
- Il compare des voisins et échange ceux qui sont mal placés.
Swapping two values
- To sort, you must swap two items.
- Python can swap in one line:
a, b = b, a.
Échanger deux valeurs
- Pour trier, il faut échanger deux éléments.
- Python peut échanger en une seule ligne :
a, b = b, a.
a = 5
b = 9
a, b = b, a
print(a, b) # 9 5
Bubble sort: compare neighbours
- Walk the list comparing each pair of neighbours.
- If the left one is bigger, swap them — the biggest "bubbles" to the end.
- Repeat the passes until the list is in order.
Tri à bulles : comparer les voisins
- Parcourir la liste en comparant chaque paire de voisins.
- Si celui de gauche est plus grand, les échanger — le plus grand « remonte » vers la fin comme une bulle.
- Répéter les passages jusqu'à ce que la liste soit ordonnée.
nums = [5, 1, 4, 2]
for i in range(len(nums) - 1):
for j in range(len(nums) - 1 - i):
if nums[j] > nums[j + 1]:
nums[j], nums[j + 1] = nums[j + 1], nums[j]
print(nums) # [1, 2, 4, 5]
In the exam: bubble sort
- The exam writes bubble sort in pseudocode with nested loops and a swap.
En examen : tri à bulles
- L'examen présente le tri à bulles en pseudocode avec des boucles imbriquées et un échange.
FOR I ← 1 TO N - 1
FOR J ← 1 TO N - 1
IF List[J] > List[J + 1]
THEN
Temp ← List[J]
List[J] ← List[J + 1]
List[J + 1] ← Temp
ENDIF
NEXT J
NEXT I
Watch bubble sort work · Observez le tri bulle en action
Compare neighbours and swap any out of order; the biggest bubbles to the end. · Comparez les voisins et échangez ceux qui ne sont pas dans l'ordre ; les plus gros remontent vers la fin.
Common mistakes
- Each pass moves the largest remaining value to the end.
- If a whole pass makes no swaps, the list is already sorted.
Erreurs courantes
- Chaque passage déplace la plus grande valeur restante vers la fin.
- Si un passage complet ne provoque aucun échange, la liste est déjà triée.
Now you try
- Swap two values, then sort a whole list.
- Press Check answer to test your code.
À vous maintenant
- Échanger deux valeurs, puis trier toute une liste.
- Appuyez sur Vérifier la réponse pour tester votre code.
Swap the values of a and · et b, so that afterwards a is 9 and · et b is 5. · Échangez les valeurs de a et b, de sorte qu'après a soit 9 et b soit 5.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Sort the list nums into · dans ascending · croissant order (smallest first) using a bubble sort. The result should be [1, 2, 4, 5]. · Triez la liste nums dans l'ordre croissant (plus petit d'abord) en utilisant un tri bulle. Le résultat doit être [1, 2, 4, 5].
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Write is_sorted(nums) that returns True if the list is already in ascending order, otherwise False. · Écrivez is_sorted(nums) qui retourne True si la liste est déjà triée par ordre croissant, sinon False.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.