Пузырьковая сортировка в 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.
Практические задания
Изменяйте входные данные и проверяйте граничные случаи перед работой с большими наборами.
- Проверьте пустой ввод, один элемент и дубликаты.
- Выводите состояние после каждого шага.
- Сравните производительность с другим решением.