Устойчивость сортировки: что она гарантирует на практике
Список заказов уже отсортирован по времени создания. Затем выполняется:
orders.sort(key=lambda o: o["priority"])
Что гарантирует устойчивость сортировки в Python относительно результата?
- Список останется отсортированным одновременно и по приоритету, и по времени во всём объёме
- Повторный вызов `sort` с тем же ключом не будет ничего переставлять, поэтому вторая сортировка выполнится за O(1)
- Элементы с равными ключами будут расположены в порядке, который выберет алгоритм для наилучшей производительности
- Заказы с одинаковым приоритетом сохранят взаимный порядок по времени, полученный на прошлой сортировке
