Вопрос Не работает код Python, помогите.

Регистрация
25 Апр 2013
Сообщения
72
Репутация
0
Спасибо
0
Монет
0
Привет, я новичок в питоне и попытался сделать алгоритм сортировки пузырем. Возможно я тупой, но у меня не работает. Помогите.

Код:



ls = [2, 1, 4, 99, 66, 0]

ls_count = len(ls)

index = 0

count_loop = 0

while count_loop < ls_count:

if ls[index] < ls[index + 1]:

ls[index], ls[index + 1] == ls[index + 1], ls[index]

index = index + 1

count_loop+=1

print(ls)
 
начнем с исключения indexOutOfRange - при index равном последнему элементу index + 1что выдаст?
далее у вас нет флага isChanged или isSwapped который является индикатором отсортированности

и закончим тем что ответ от Молота не оптимален даже относительно не оптимизированной версии пузыря

гляньте вики но лучше на инглише там вроде попонятнее
 
А по моему так лучше:
875a8375f91de049494d6073098e8a2f_fb5bd07b53b214b4f0ef06d698fbb14f.jpg

 
Назад
Сверху