Сортировка списка чисел с использованием не более двух стеков в Python - PullRequest
0 голосов
/ 03 ноября 2019

У меня есть задание, и мне нужна помощь.

'' '' Описание проблемы очень простое: если дан список чисел в любом порядке, вернуть отсортированный список (в порядке возрастания).

Однако вы должны соблюдать следующие ограничения: a. Вы можете пройти список номеров один раз. Чтобы проиллюстрировать этот момент, функция, которую нужно написать makeSorted, имеет основной цикл, написанный для вас. Вы можете получить доступ только к номерам в этом цикле.

b. Вы можете использовать не более двух стеков для временного хранения номера. т. е. ваш код не может использовать дополнительную структуру данных для хранения чисел любым способом. Опять же, чтобы помочь вам, два стека уже объявлены для вас. Вам не разрешено объявлять / использовать любые дополнительные переменные в функции.

c. Точно так же список вывода должен использоваться только для сохранения результата. Каждый номер должен быть добавлен в список вывода и к нему больше нет доступа.

d. Если в списке есть повторяющиеся числа, необходимо соблюдать относительный порядок (т. Е. Как если бы это была стабильная сортировка).

Для простоты можно предположить, что дана реализация StackList.

Примечание. Поскольку правильность вашего решения в основном зависит от того, соблюдаете ли вы ограничения, не принимайте вывод тестового примера в качестве единственного индикатора. '' ''

...