1. 程式人生 > 其它 >python選擇排序

python選擇排序

1、選擇排序概念

選擇排序(Selection sort)是一種簡單直觀的排序演算法。它的工作原理是:
第一次從待排序的資料元素中選出最小(或最大)的一個元素,存放在序列的起始位置,
然後再從剩餘的未排序元素中尋找到最小(大)元素,然後放到已排序的序列的末尾。
以此類推,直到全部待排序的資料元素的個數為零。選擇排序是不穩定的排序方法。

2、程式碼展示:

import random as rd


def select_sort():
    # 從1到100中隨機抽5個數,當然也可以自己定義一個數組。
    select_list = [rd.randint(1, 100) for i in range(5)]
    # 陣列長度
    length = len(select_list)
    print(f'初始列表為:{select_list}')
    for i in range(length - 1):
        # 第一個元素設定為預設最小值
        min_index = i
        for j in range(i+1, length):
            # 如果預設最小值比當前值要大,則把當前值設定為預設最小值
            # 如果想把陣列排成降序,則把大於號改成小於號就可以。(當前為升序)
            if select_list[min_index] > select_list[j]:
                min_index = j
        # 交換位置
        select_list[min_index], select_list[i] = select_list[i], select_list[min_index]
        # 列印每一輪的排序情況
        print(f'第{i+1}輪排序是:{select_list}')
    print(f'最終排好序為:{select_list}')


if __name__ == '__main__':
    select_sort()


3、效果展示

吾生也有涯,而知也無涯。--莊子《養生主》