【Python 3 選擇排序】

算法講解


選擇排序(Selection sort)是一種簡單直觀的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。


算法代碼實現


Python 3 代碼實現如下,隨機生成20個數,保存到列表變量list1中,通過選擇排序法進行排序,然後輸出排序結果:



























from random import randrangeimport datetime
def Sele_sort():    list1 = []    while len(list1) < 20:  # 範圍內隨機取20個數值        list1.append(randrange(0, 1000, 3))
   print('排序前數組:',list1,'\n')    # 通過兩個for循環實現選擇排序算法    for i in range(len(list1)):        min_idx = i        for j in range(i+1, len(list1)):            if list1[min_idx] > list1[j]:                 min_idx = j                    list1[i], list1[min_idx] = list1[min_idx], list1[i]    print('選擇排序結果:')    # 輸出排序後的結果    for j in range(1,len(list1)):        print(list1[j])
start = datetime.datetime.now()#調用排序函數Sele_sort()end = datetime.datetime.now()print ('選擇排序運行所用時間:',end-start)

代碼運行結果如下:

圖片


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章