Алгоритмы на Python

Пузырьковая сортировка в Python

На каждом проходе большие значения перемещаются к концу.

Что такое Пузырьковая сортировка в Python?

На каждом проходе большие значения перемещаются к концу.

Сортируйте повторной перестановкой соседних элементов.

Когда это использовать?

  • Понимать алгоритмы и структуры данных.
  • Наблюдать каждый шаг и проверять граничные случаи.
  • Сравнивать время работы и память.

Визуализация: Пузырьковая сортировка в Python

O(n²)

Нажимайте Запуск или Шаг, чтобы следить за сравнениями и перемещением данных.

Пример кода

Запустить код →
main.py
def bubble_sort(values):
    result = values.copy()
    for end in range(len(result) - 1, 0, -1):
        swapped = False
        for index in range(end):
            if result[index] > result[index + 1]:
                result[index], result[index + 1] = result[index + 1], result[index]
                swapped = True
        if not swapped:
            break
    return result

print(bubble_sort([5, 1, 4, 2, 8]))

Ожидаемый результат

[1, 2, 4, 5, 8]

Как это работает

Соседи в неверном порядке меняются местами. Из-за O(n²) метод в основном учебный.

Измените значения и запустите программу в онлайн-компиляторе Python CodeUtility без локальной установки Python.

Практические задания

Изменяйте входные данные и проверяйте граничные случаи перед работой с большими наборами.

  1. Проверьте пустой ввод, один элемент и дубликаты.
  2. Выводите состояние после каждого шага.
  3. Сравните производительность с другим решением.
Запустить в Python IDE →