Я довольно новичок в программировании; Я изучал Python только несколько недель. Недавно мне было дано задание, которое просит меня создать список целых чисел, а затем вручную сортировать числа от самого низкого до самого высокого в отдельном списке.Вручную сортировать список из 10 целых чисел в python
import random
unordered = list(range(10))
ordered = []
lowest = 0
i = 0
random.shuffle(unordered)
lowest = unordered[0]
while i in unordered:
if unordered[i] < lowest:
lowest = unordered[i]
i += 1
if i >= len(unordered):
i = 0
ordered.append(lowest)
unordered.remove(lowest)
lowest = unordered[i]
print(ordered)
Это то, что у меня есть до сих пор, и, чтобы быть откровенным, оно совсем не работает. Псевдокод мне было дано это:
- Создать пустой список для хранения заказанного элементы
- Хотя все еще существуют элементы в неупорядоченном списке
- Установить переменную, низкий, к первый элемент в неупорядоченном списке
- Для каждого элемента в неупорядоченном списке
- Если элемент меньше, чем самый низкий
- Присвоить значение этого элемента к низшему
- Append самым низким в упорядоченном списке
- Удалить самое низкое из неупорядоченного списка
- Распечатайте упорядоченный список
Самая большая проблема, с которой я столкнулся до сих пор, заключается в том, что мой счетчик не дает мне возможности выбрать наименьшее количество из моего списка неупорядоченным. И тогда у меня возникают проблемы с индексированием моего списка, то есть индекс выходит за пределы диапазона. Может ли кто-нибудь дать мне немного отзывов о том, где я ошибаюсь?
Кроме того, я получил эту информацию, который я не совсем уверен:
Вы можете использовать установленный метод для сортировки списка называется Выбор сортировки.
На этот раз я не должен использовать встроенные методы сортировки Python. Все это должно быть сделано вручную. Спасибо за любую помощь!
Спасибо JL, который работал как шарм! – Kordan9090