天天看点

排序算法之选择排序

一、选择排序原理

  将未排序序列中的第一个元素标记为最小,存放到有序区的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 

关键点:

  • 无序区
  • 记录最小元素的位置

二、实现

def select_sort(li):

    for i in range(len(li)-1): #循环趟数
        min_position=i #将无序区的最小位置进行保存
        for j in range(i+1,len(li)): #再从剩余未排序元素中继续寻找最小元素,然后放到已排序序列的末尾
            if li[j]<li[min_position]:
                min_position=j
        li[min_position],li[i]=li[i],li[min_position]

l=[3,5,2,9]
select_sort(l)
print(l) #[2, 3, 5, 9]      

 原文:https://github.com/hustcc/JS-Sorting-Algorithm/blob/master/2.selectionSort.md

作者:iveBoy

出处:http://www.cnblogs.com/shenjianping/

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。

继续阅读