首页 > 编程语言 > 详细

插入排序

时间:2019-11-17 10:52:34      阅读:72      评论:0      收藏:0      [点我收藏+]

插入排序:


5 4 3 2

1:1位置开始比较,和他前面所有的数字进行比较
4 5 3 2

2:2位置开始比较,和他前面所有的数字进行比较
4 3 5 2
3 4 5 2

3:3位置开始比较,和他前面所有的数字进行比较
3 4 5 2
3 4 2 5
3 2 4 5
2 3 4 5

排好序了。
依次把1坐标以后的所有元素,分别与它前面的元素进行比较
如果发生了小于的情况就插入。

原理:每次有一个数,它的前面都是排好序的,然后它要插入到
排好的序列中,插入排序
def insert(nums):
    #从index=1开始比较相邻的两个元素
    for i in range(1,len(nums)):
        #所有i坐标的元素都跟index=i前面的元素相比较,小于则交换元素
        for j in range(i,0,-1):
            if nums[j-1] < nums[j]:
                nums[j],nums[j-1] = nums[j-1],nums[j]
    return nums

print(insert([4,2,5,1]))

 



插入排序

原文:https://www.cnblogs.com/ff-gaofeng/p/11875395.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!