python 选择排序

选择排序:

假设有一个序列,a[0],a[1],a[2]...a[n]现在,对它进行排序。我们先从0这个位置到n这个位置找出最小值,然后将这个最小值与a[0]交换;

然后将a[0]排除,在a[1]到a[n]之间找到最小值,将这个值和a[1]交换,重复这个过程,知道最后一个

def select_sort(lst):
    for i in range(len(lst)):
        min = i
        for j in range(min,len(lst)):
            # 寻找min 到len(lst)-1 这个范围内的最小值
            if lst[min] > lst[j]:
                min = j
        lst[i], lst[min] = lst[min], lst[i]

lst = [2,6,1,8,2,4,9]
select_sort(lst)
print lst

重点是找到某个范围的最小值,并将第一个位置让给最小值

posted on 2020-08-06 16:26  小小喽啰  阅读(115)  评论(0编辑  收藏  举报