这篇文章将为大家详细讲解有关如何使用Python实现的直接插入排序算法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
具体如下:
# -*- coding:utf-8 -*- '''直接插入的python实现 时间复杂度O(n**2) 空间复杂度O(1) 稳定 思想:先将前两个元素排序,第三个元素插入前面已排好序列, 后面的元素依次插入之前已经排好序的序列 ''' author = 'Leo Howell' L = [89,67,56,45,34,23,1] def direct_insert_sort(numbers): for i in range(1,len(numbers)): #temp变量指向尚未排好序元素(从第二个开始) temp = numbers[i] #j指向前一个元素的下标 j = i-1 #temp与前一个元素比较,若temp较小则前一元素后移,j自减,继续比较 while j>=0 and temp<numbers[j]: numbers[j+1]=numbers[j] j = j-1 #temp所指向元素的最终位置 numbers[j+1] = temp if __name__=='__main__': direct_insert_sort(L) print L
运行结果:
关于“如何使用Python实现的直接插入排序算法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。