插入排序

Posted ff-gaofeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了插入排序相关的知识,希望对你有一定的参考价值。

插入排序:


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]))

 



以上是关于插入排序的主要内容,如果未能解决你的问题,请参考以下文章

KDoc:插入代码片段

代码片段使用复杂的 JavaScript 在 UIWebView 中插入 HTML?

将代码片段插入数据库并在 textarea 中以相同方式显示

关于在各浏览器中插入音频文件的html代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段