python 选择排序

选择排序的时间复杂度为O(N^2)

def selectedSort(myList):
    #获取list的长度
    length = len(myList)
    #一共进行多少轮比较
    for i in range(0,length-1):
        #默认设置最小值得index为当前值
        smallest = i
        #用当先最小index的值分别与后面的值进行比较,以便获取最小index
        for j in range(i+1,length):
            #如果找到比当前值小的index,则进行两值交换
            if myList[j]<myList[smallest]:
                myList[j],myList[smallest]=myList[smallest],myList[j]
        #打印每一轮比较好的列表
                print("round ",i,myList)

myList = [1,4,5,6,0]
print("Selected Sort: ")
selectedSort(myList)

打印了每一轮的输出

选择排序就是讲0到len的数,每次都将最小的放在最前面,然后下一次的比较就从1到len

如此往复

 

posted @ 2018-10-31 16:33  黄溢  阅读(512)  评论(0编辑  收藏  举报