直接插入排序
把 n 个待排序的元素看成一个有序表和一个无序表,
开始时有序表中只有一个元素,无序表中有 n-1 个元素。
排序过程即每次从无序表中取出第一个元素,
将它插入到有序表中,使之成为新的有序表,重复 n-1 次完成整个排序过程。
def insertSort(unsorted_list, reversed=False):
print("raw: ", unsorted_list)
for i in range(1, len(unsorted_list)):
j = i-1
cmp = unsorted_list[i]
while j > -1 and func(unsorted_list[j], cmp, reversed):
unsorted_list[j+1], unsorted_list[j] = unsorted_list[j], cmp
j -= 1
print("NO.%d:" % i, unsorted_list)
print("last:", unsorted_list)
return unsorted_list
© 版权声明
吾爱博客|AYFRE.COM 版权所有,转载请标明出处。
THE END
请登录后查看评论内容