資料結構--排序--插入排序--python語言描述

妙手書生2016發表於2020-11-26

 

資料結構

排序

插入排序

1、描述:將一條待排序的記錄按照其關鍵字值的大小插入已排序記錄序列中的正確位置,依次重複,直到全部記錄都插入完成。

2、python程式碼如下:

# -*- coding: utf-8 -*
#插入排序的函式,a為list型別
def InsertSort(a):
    for i in range(1,len(a)):
        p=i
        j=i-1
        while j>=0:
            if a[p]<a[j]:
                q=a[j+1]
                a[j+1]=a[j]
                a[j]=q
                j-=1
            else:
                break
            p=j+1
    return a
#測試案例
a=[2,45,36,72,34]
print InsertSort(a)

3、返回結果:

[2, 34, 36, 45, 72]

4、演算法效能

    時間複雜度:O(n^2)

    空間複雜度:O(1)

相關文章