Сортировка вставками в Python
Алгоритм похож на упорядочивание карт в руке.
Что такое Сортировка вставками в Python?
Алгоритм похож на упорядочивание карт в руке.
Вставляйте элементы в уже отсортированную часть.
Когда это использовать?
- Понимать алгоритмы и структуры данных.
- Наблюдать каждый шаг и проверять граничные случаи.
- Сравнивать время работы и память.
Визуализация: Сортировка вставками в Python
Нажимайте Запуск или Шаг, чтобы следить за сравнениями и перемещением данных.
Пример кода
main.py
def insertion_sort(values):
result = values.copy()
for index in range(1, len(result)):
current = result[index]
position = index - 1
while position >= 0 and result[position] > current:
result[position + 1] = result[position]
position -= 1
result[position + 1] = current
return result
print(insertion_sort([9, 5, 1, 4, 3]))
Ожидаемый результат
[1, 3, 4, 5, 9]
Как это работает
Большие значения сдвигаются для вставки; метод эффективен на почти отсортированных данных.
Измените значения и запустите программу в онлайн-компиляторе Python CodeUtility без локальной установки Python.
Практические задания
Изменяйте входные данные и проверяйте граничные случаи перед работой с большими наборами.
- Проверьте пустой ввод, один элемент и дубликаты.
- Выводите состояние после каждого шага.
- Сравните производительность с другим решением.