Попытка создать вставку рода, но получаю ошибку ...Вставка сортировки не работает - индекс списка из диапазона
Не знаю, почему это происходит. Он всегда имеет тенденцию пропустить 37 Aswell
numbers = [45,56,37,79,46,18,90,81,50]
def insertionSort(items):
Tsorted = []
Tsorted.append(items[0])
items.remove(items[0])
for i in range(0,len(items)):
print (Tsorted)
if items[i] > Tsorted[len(Tsorted)-1]:
Tsorted.append(items[i])
else:
Tsorted[len(Tsorted)-2] = items[i]
items.remove(items[i])
insertionSort(numbers)
Ошибка:
if items[i] > Tsorted[len(Tsorted)-1]:
IndexError: list index out of range
Это не ваша ошибка. Это уже объяснялось в ответах, но я хотел добавить: 'Tsorted.append (items.pop (items [0]))' равно тому, что вы делаете в этих двух строках. Кроме того, 'Tsorted [-1]' даст вам тот же результат, что и 'Tsorted [len (Tsorted) -1]' – Lafexlos