python 选择排序

Posted 青柚

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 选择排序相关的知识,希望对你有一定的参考价值。

#!/usr/bin/python

def select_sort(li):#循环列表依次拿出最小的值将值放在第一个位置
    for i in range(len(li)-1): #最后一个数肯定是最大或者最小 不需要比较 所以循环次数减少1
        min_loc = i #假设列表第一个数为最小数
        for j in range(i+1,len(li)): #循环无序列表 i+1表示不和自己比较 无序列表的长度是逐渐缩短的
            if li[j] < li[min_loc]: #将无序列表的第一个数和有序列表的第一个数进行比较 小于则是进行升序 大于则是降序
                min_loc = j #将列表中的下标进行更换
                li[i],li[min_loc] = li[min_loc],li[i] #以下标的形式将数值进行更换


#时间复杂度为 O(n^2)

以上是关于python 选择排序的主要内容,如果未能解决你的问题,请参考以下文章

[leetcode]排序算法(冒泡排序,选择排序,插入排序,快速排序,计数排序)

python实现时间复杂度平均为N^2的冒泡选择插入排序

python实现时间复杂度平均为N^2的冒泡选择插入排序

python实现时间复杂度平均为N^2的冒泡选择插入排序

python实现时间复杂度平均为N^2的冒泡选择插入排序

如何从另一个片段访问片段对象