插入排序:
插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法 [1] 。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增1的有序表。在其实现过程使用双层循环,外层循环对除了第一个元素之外的所有元素,内层循环对当前元素前面有序表进行待插入位置查找,并进行移动
def insertionSort(lyst):
i = 1
while i < len(lyst):
temp = lyst[i]
j = i - 1
while j >= 0:
if temp < lyst[j]:
lyst[j+1] = lyst[j]
j -= 1
else:
break
lyst[j +1 ] = temp
i += 1
return lyst
lyst = [0,1,2,5,6,9,7,8,6,3,1,1,4,2,2,7,8,9,5,6,8,6,4,9,9,9,9,9,6,6,6]
print(insertionSort(lyst))
[0, 1, 1, 1, 2, 2, 2, 3, 4, 4, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9]