python插入排序算法的实现代码

yipeiwu_com6年前Python基础

1.算法:
设有一组关键字{ K 1 , K 2 ,…, K n };排序开始就认为 K 1 是一个有序序列;让 K 2 插入上述表长为 1 的有序序列,使之成为一个表长为 2 的有序序列;然后让 K 3 插入上述表长为 2 的有序序列,使之成为一个表长为 3 的有序序列;依次类推,最后让 K n 插入上述表长为 n-1 的有序序列,得一个表长为 n 的有序序列。

2.python插入排序代码

复制代码 代码如下:

def insertion_sort(list2):
    for i in range(1, len(list2)):
        save = list2[i]
        j = i
        while j > 0 and list2[j - 1] > save:
            list2[j] = list2[j - 1]
            j -= 1
        list2[j] = save

结果:[2, 3, 4, 21, 33, 44, 45, 67]

3.时间复杂度:O(n*n)

相关文章

Python入门_浅谈数据结构的4种基本类型

数据结构:通俗点说,就是储存大量数据的容器。这里主要介绍Python的4种基本数据结构:列表、字典、元组、集合。 格式如下: 列表:list = [val1,val2,val3,val4...

python将字典列表导出为Excel文件的方法

python将字典列表导出为Excel文件的方法

将如下的字典列表内容导出为Excel表格文件形式: 关于上图字典列表的写入,请参考文章:/post/169088.htm python将字典列表导出为Excel文件的方法,如下所示:...

为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)

为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)

为何人工智能(AI)首选Python?读完这篇文章你就知道了。我们看谷歌的TensorFlow基本上所有的代码都是C++和Python,其他语言一般只有几千行 。如果讲运行速度的部分,...

深入学习python的yield和generator

前言 没有用过的东西,没有深刻理解的东西很难说自己会,而且被别人一问必然破绽百出。虽然之前有接触过python协程的概念,但是只是走马观花,这两天的一次交谈中,别人问到了协程,顿时语塞,...

python实现支持目录FTP上传下载文件的方法

本文实例讲述了python实现支持目录FTP上传下载文件的方法。分享给大家供大家参考。具体如下: 该程序支持ftp上传下载文件和目录、适用于windows和linux平台。 #!/u...