插入排序
插入排序是一种比较简单的排序算法,先定义一个有序队列,然后把无需队列里的第一个元素放到有序队列的合适的位置(就是讲元素放进去以后有序队列必须还是有序的),重复操作知道所有元素都 添加到有序队列中。
插入排序的最优时间复杂度为O(n),最坏时间复杂度为O(n**2)
def insertsort(alist): n=len(alist) if n<=1: return alist for i in range(n-1): for j in range(i,0,-1): if alist[j]<alist[j-1]: alist[j],alist[j-1]=alist[j-1],alist[j] return alist if __name__ == '__main__': alist=[2,3,6,1,6,11,431,10,0] print(insertsort(alist))