1. 程式人生 > >python3 選擇排序

python3 選擇排序

選擇排序,每次只比兩個位置的數,從開始起算,用第一個數和後面的每一個數進行比較,當比其小的互換。第一個數字比完後,把第二個數當做開始點,依次和後面的進行比較……以此類推。

lis = [10, 8, 6, 3, 7, 1]
def bubble_sort(array):
    count = len(array)
    for a in range(0,count): # 控制迴圈的次數
        for b in range(a+1,count): # 控制迴圈從頭走到尾
            if array[a]>array[b]:
                array[a], array[b] = array[b], array[a]
    return
array if __name__ == "__main__": lis = [49, 38, 65, 97, 76, 13, 27, 49] print(bubble_sort(lis))

選擇排序,從第一的數字開始,每次比較兩個數字,當前面的數字比後面的數字大的時候,互換,直到把最大的放在末尾。然後比較除了最後一位數字中的最大數放在倒數第二位,依次類推。

def select_sort(array):
    n = len(array)
    min_index = 0
    for j in range(n-1):
        for i in range(j+1
,n): if array[min_index] > array[i]: min_index = i array[j], array[min_index] = array[min_index], array[j] return array if __name__ == "__main__": lis = [49, 38, 65, 97, 76, 13, 27, 49] print(select_sort(lis))