插入排序

2018-09-09  本文已影响0人  地铁姑娘

算法分析

序列的第一个元素,肯定是有序的,把第二个元素和第一个元素相比,插入到合适的位置,这样前两个元素就有序了,接着,把第三个元素插入到前面包含两个元素的有序列表中,以此类推,直至插完第n个数据。

代码实现

def insertSort (listx):
    xLen = len (listx)
    for i in range (1, xLen):
        j = i - 1
        # 把listx[i] 和前面的元素进行比较,插入到合适的位置
        while j >= 0:
            if listx[j] > listx[j + 1]:
                listx[j], listx[j + 1] = listx[j + 1], listx[j]
                j -= 1
            else:
                break
    return listx

if __name__ == '__main__':
    print insertSort ([77, 45, 3, 34, 4, 3, 454, 87])
上一篇 下一篇

猜你喜欢

热点阅读