python排序算法的實現-選擇

1.算法:python

對於一組關鍵字{K1,K2,…,Kn}, 首先從K1,K2,…,Kn中選擇最小值,假如它是 Kz,則將Kz與 K1對換;算法

而後從K2,K3,… ,Kn中選擇最小值 Kz,再將Kz與K2對換。spa

如此進行選擇和調換n-2趟,第(n-1)趟,從Kn-1、Kn中選擇最小值 Kz將Kz與Kn-1對換,最後剩下的就是該序列中的最大值,一個由小到大的有序序列就這樣造成。code

2.python  代碼:blog

def selection_sort(list2):
    for i in range(0, len (list2)):
        min = i
        for j in range(i + 1, len(list2)):
            if list2[j] < list2[min]:
                min = j
        list2[i], list2[min] = list2[min], list2[i]  # swap

結果爲:[2, 3, 4, 21, 33, 44, 45, 67]io

3. 時間複雜度  O(n*n)class

相關文章
相關標籤/搜索