经典算法之直接插入排序Python实现示例-演道网

1、算法思想

把待排序的元素插入已经排序的序列中。取第一个元素为有序序列。从剩下的元素中依次取值和相邻的元素作比较,找到合适的位置并插入。直至所有待排序的元素为有序序列。

2、代码实现

#!coding:utf-8
#直接插入排序
#www.linuxidc.com
def inert_sort(lst):
    for i in range(1,len(lst)):
        if lst[i-1]>lst[i]:
            tmp=lst[i]
            seq=i
            while seq>0 and  lst[seq-1]>tmp:
                lst[seq]=lst[seq-1]
                seq-=1
            lst[seq]=tmp
    return lst

if __name__ == “__main__”:
    a=inert_sort([1,16,17,28,9,0])
    print(a)

输出如下:

[0, 1, 9, 16, 17, 28]

经典算法之直接插入排序Python实现示例

更多Python相关信息见Python 专题页面 https://www.linuxidc.com/topicnews.aspx?tid=17

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.as

转载自演道,想查看更及时的互联网产品技术热点文章请点击http://go2live.cn