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

Python 演算法 - 選擇排序

# coding=utf-8


# 選擇排序
def select_sort(lst=[]):
    """
    基本思想:第1趟,在待排序記錄r1 ~ r[n]中選出最小的記錄,將它與r1交換;
    第2趟,在待排序記錄r2 ~ r[n]中選出最小的記錄,將它與r2交換;
    以此類推,第i趟在待排序記錄r[i] ~ r[n]中選出最小的記錄,將它與r[i]交換,使有序序列不斷增長直到全部排序完畢。

    :param lst: 
    :return: 
    """
    count = len(lst)
    for i in range(0, count):
        min = i
        for
j in range(i + 1, count): # 從待排記錄中選出最小的記錄 if lst[min] > lst[j]: min = j lst[min], lst[i] = lst[i], lst[min] # 將最小的記錄與待排序記錄中的第一個記錄進行交換 return lst