ÎncepețiÎncepe gratuit

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

Vezi cursul

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]))
Editează și rulează codul