插入排序

插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。

排序过程如下:


代码如下:
def insertSort(seq):
    n=len(seq)
    if n<=1:
        return seq
    #基准数一般都为第一个数,从第二个数开始比较
    for i in range(1,n):
        #从已排好序列外的第一个数往前比较
        for j in range(i,0,-1):
            #后一个数小于前一个数就进行交换
            if seq[j]<seq[j-1]:
                seq[j],seq[j-1]=seq[j-1],seq[j]
            else:
                break
    return seq

seq=[3,2,6,3,2,5,3]
print(insertSort(seq))

#运行结果
[2, 2, 3, 3, 3, 5, 6]




全部评论

相关推荐

勇敢牛牛不怕困难,希望能过初筛
投递韶音科技等公司10个岗位
点赞 评论 收藏
分享
07-11 18:47
已编辑
门头沟学院 后端
在看数据的孤勇者很想...:如果你是在校硕士,六段大厂实习一眼假,假设一段实习两个月,硕一暑假,硕一寒假,大四暑假,大四寒假,大三寒假,大三暑假,哥们,你怎么卷吗,寒假基本两个月在企业实习不现实,所以你可能是日常实习,但是你不可能每段日常实习都是两个月吧,他们日常实习都是三个月起步这样,所以你往前推一下,一段日常实习,就三个月,敢情你大学生课都不上,全在实习吗?你自己问问自己,六段大厂实习,一点没学到,自己说出来会不会笑呀,不管学历,但凡有一段大厂实习都很牛逼了
投递米哈游等公司10个岗位
点赞 评论 收藏
分享
温州头等大孝子:你们的确很幸福,但是有一个小问题:谁问你了?我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了
字节跳动开奖364人在聊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务