Corectarea unui bug în algoritmul bubble sort
Ți-a fost oferit un program care sortează o listă de numere folosind algoritmul bubble sort. În timpul testării, observi că codul nu funcționează corect. Poți corecta algoritmul astfel încât să funcționeze cum trebuie?
Acest exercițiu face parte din cursul
Structuri de date și algoritmi în Python
Instrucțiuni pentru exercițiu
- Corectează greșeala din atribuirea variabilei
is_sorted. - Corectează greșeala la verificarea valorilor adiacente.
- Corectează greșeala la actualizarea valorii variabilei
list_length.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
def bubble_sort(my_list):
list_length = len(my_list)
# Correct the mistake
is_sorted = True
while not is_sorted:
is_sorted = True
for i in range(list_length-1):
# Correct the mistake
if my_list[i] < my_list[i+1]:
my_list[i] , my_list[i+1] = my_list[i+1] , my_list[i]
is_sorted = False
# Correct the mistake
list_length += 1
return my_list
print(bubble_sort([5, 7, 9, 1, 4, 2]))