概念
将未排序的数中,依次插入到已排序的数中
最坏时间复杂度O(n2)
示意图
代码实现
def insert_sort(lst):
for i in range(1,len(lst)):#控制循环次数
for j in range(i,0,-1):#从i的位置往前比较
if lst[j]<lst[j-1]:#如果当前位置小于前面的数,则交换位置
lst[j],lst[j-1] = lst[j-1],lst[j]
def insert_sort(lst):
for j in range(len(lst)-1):
i = j + 1
while i >0:
if lst[i]<lst[i-1]:
lst[i],lst[i-1] = lst[i-1],lst[i]
i -= 1
return lst