Задача. Отсортировать заданный массив методом "сортировка пузырьком".
Сортировка пузырьком - самый известный алгоритм, применяемый в учебных целях, для практического же применения является слишком медленным. Алгоритм лежит в основе более сложных алгоритмов: "Шейкерная сортировка", "Пирамидальная сортировка", "Быстрая сортировка".
Сортировка заключается в повторяющихся проходах по массиву, при которых попарно сравниваются каждые 2 соседних элемента, больший из которых перемещается в правую сторону. Алгоритм работает до тех пор, пока элементы массива не будут расположены в порядке возрастания.
Например у нас есть массив:
4 23 6 2 12 100 9
Нам нужно получить отсортированный массив:
2 4 6 9 12 23 100
Решение на Python выглядит следующим образом (примечание: перем. j - количество просмотров массива, i - индекс элемента массива):
lst = [4, 23, 6, 2, 12, 100, 9]
j = 0
for j in range(len(lst)):
for i in range(len(lst) -1):
if lst[i] > lst[i + 1]:
lst[i], lst[i + 1] = lst[i + 1], lst[i]
i += 1
print (lst)