数据结构Python实现-简单选择排序算法

简单排序算法基本思想

选择排序法是一种不稳定的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到全部待排序的数据元素排完。

实现代码

#选择排序

def select_sort(alist):
    n=len(alist)
    for j in range(n-1):  
        min=j
        for i in range(j+1,n):
            if alist[i] < alist[min]:
               min=i
        alist[j],alist[min]=alist[min],alist[j]
    #return alist
                
                
if __name__ =="__main__":
    alist=[1,8,7,9,0,2]
    print(alist)
    select_sort(alist)
    print(alist) 
    

敲代码错误思想

一开始是把最小值找到,然后用min记录下来,然后把其和min进行交换,但是最后发现,排序不成功,是因为只是把min存的最小值和那个位置进行交换了,本来那个位置的元素没有进行交换。所以只能记录最小值所在的位置,然后进行元素的交换。

发布了40 篇原创文章 · 获赞 1 · 访问量 2047

猜你喜欢

转载自blog.csdn.net/qq_40660825/article/details/102083381