Пузырьковый метод сортировки от Шемарова Дениса. Программа на языке Python.
| Вложение | Размер |
|---|---|
| 23.64 КБ |
Пузырьковый метод сортировки от Шемарова Дениса,
11 класс МБОУ "Б-Болдинская средняя школа им А.С. Пушкина".
Вот корректно отформатированный код с правильными отступами (в Python отступы критически важны — они определяют блоки кода): python N = int(input()) l = list() for _ in range(N): l.append(int(input())) # N = 6 # l = [4, 1, 25, 72, 7, 2] for i in range(N, 0, -1): for j in range(i): try: if l[j] < l[j + 1]: l[j], l[j + 1] = l[j + 1], l[j] except Exception: ... print(l) Пояснения по отступам:
Важно:
|
Разберём код пузырьковой сортировки пошагово. Общий принцип пузырьковой сортировки Алгоритм последовательно сравнивает соседние элементы массива и меняет их местами, если они расположены в неправильном порядке (в данном случае — если левый элемент меньше правого, т. е. сортировка по убыванию). После каждого полного прохода наибольший («самый лёгкий») элемент «всплывает» на своё место в конце массива. Разбор кода 1. Ввод данных python N = int(input()) l = list() for _ in range(N): l.append(int(input()))
Пример: если ввести 6, а затем числа 4, 1, 25, 72, 7, 2, получится список l = [4, 1, 25, 72, 7, 2]. 2. Основной цикл сортировки python for i in range(N, 0, -1): for j in range(i): try: if l[j] < l[j+1]: l[j], l[j+1] = l[j+1], l[j] except Exception: ... Внешний цикл (for i in range(N, 0, -1)):
Внутренний цикл (for j in range(i)):
Условие и обмен:
Обработка исключений (try/except):
3. Вывод результата python print(l) После завершения сортировки выводится итоговый список. Пример работы алгоритма Исходный массив: [4, 1, 25, 72, 7, 2] Проход 1 (i = 6): Проход 2 (i = 5): … Итоговый результат: [72, 25, 7, 4, 2, 1]. Недостатки кода
Улучшенный вариант (без исключений, по возрастанию) python N = int(input()) l = [int(input()) for _ in range(N)] for i in range(N): for j in range(N - i - 1): if l[j] > l[j + 1]: l[j], l[j + 1] = l[j + 1], l[j] print(l) |

Прекрасная арфа

Два петушка

Мороз и заяц

Отчего синичка развеселилась

Как нарисовать лимон акварелью