插入排序是先确定一个最小序列的排序,然后给这个有序序列插入一个新的元素,再进行比较,从尾部插入(首部)
第一次循环确定两个元素,第二次循环确定三个,则
外层循环for i in range(1,len(a)-1):
当两个元素的时候循环一次,三个循环两次,则:
for j in range(i,0,-1)
最后进行比较:
if a[j]>a[j-1]:
a[j],a[j-1]=a[j-1],a[j]
如果比较大于队尾,则不需要交换位置,跳出循环
else:
break
插入排序是先确定一个最小序列的排序,然后给这个有序序列插入一个新的元素,再进行比较,从尾部插入(首部)
第一次循环确定两个元素,第二次循环确定三个,则
外层循环for i in range(1,len(a)-1):
当两个元素的时候循环一次,三个循环两次,则:
for j in range(i,0,-1)
最后进行比较:
if a[j]>a[j-1]:
a[j],a[j-1]=a[j-1],a[j]
如果比较大于队尾,则不需要交换位置,跳出循环
else:
break