Я хочу поместить числа от самых маленьких до самых больших.Ошибка выполнения определения self insertion_sort в python3
NO.1 преуспеваем
def insertion_sort(list):
for index in range(1,len(list)):
value = list[index]
i = index-1
while i >=0:
if value < list[i]:
list[i+1]=list[i]
list[i] = value
i = i-1
else :
break
a=[2,1,4,3,6,7,9,5]
insertion_sort(a)
print(a)
NO.2 не удалось
def insertion_sort(list):
for index in range(1,len(list)):
value = list[index]
i = index - 1
while i>=0:
if value > list[i]:
i=i-1
else :
list[i+1]=list[i]
list[i]=value
break
a=[1,3,2,7,4,6,5]
insertion_sort(a)
print(a)
, когда я побежал второй, он вернулся [1, 2, 3, 4, 6, 5, 7]
Я не знаю, почему, и если я удалить break
, во втором, он не вернет результат, почему? Я думал, что цикл for закроется.
Почему вы не используете 'sorted' или' np.sort() '? – MMF
'break'is не очень с отступом – MMF