什么是插入排序?

  

插入排序就是将一个数组分为2部分,前面部分是已经排序好的,后面一部分是待排序数组。
首先将数组的第一个元素视作已排序好的第一部分,第二个元素到最后一个元素视为第二部分,
for循环第二部分,将第二部分的第一个元素,与第一部分的第一个元素进行比较,如果小于,则互换位置,否则不变,第一次循环结束。
这时,第一部分就变为了,该数组的第一个元素,和第二个元素。
第二次循环:
将第二部分的第二个(也就是目前第二部分的第一个元素),依次与第一部分的第二个元素比较,如果大于,则直接进入第三次循环,如果小于则互换位置,再与第一个元素比较,
如果小于则互换位置。
第三次循环重复第二次循环。
后面循环依次重复该步骤即可。

 

python代码如下

ll = [54, 3, 45, 3, 2, 1, 3, 4, 6, 54, 645, 7, 68]
lenl = len(ll)
for i in range(1, lenl):
    print(i)                  
    for j in range(i):
        print(j)
        if ll[i-j] > ll[i-1-j]:
            break
        else:
            ll[i-j], ll[i-1-j] = ll[i-1-j], ll[i-j]

 

posted on 2022-02-16 22:06  輪滑少年  阅读(43)  评论(0编辑  收藏  举报