1. 程式人生 > >排序演算法----選擇排序

排序演算法----選擇排序

選擇排序的思路是,先從序列中找到最小的元素,放在第一個位置,然後找到第二小的元素,放在第二個位置,以此類推,直到排好所有的值。

時間複雜度:O(n^2),需要進行比較的次數為第一輪n-1,n-2,n-3...1,總的比較次數n*(n-1)/2

例如:a=[1,2,3,4,5,6]

python3程式碼

def select_sorted(li):
    for i in range(len(li)-1):  # 外層迴圈決定需要排序的輪次
        min_index = i  # 記錄最小索引
        for j in range(i+1,len(li)):  # 內層迴圈決定需要比較的次數
            if li[min_index] > li[j]: # 判斷
                min_index = j  
        li[i],li[min_index] = li[min_index],li[i]
    return li