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]:
smallest = j
tmp = myList[smallest]
myList[smallest] = myList[i]
myList[i]=tmp
# 打印每一轮比较好的列表
print("Round ",i,": ",myList)
时间复杂度::
平均:O(n^2)
最坏:O(n^2)
最好:O(n^2)
空间复杂度:O(1)
稳定性:不稳定(三个简单排序中唯一一个不稳定的算法,也是最好最坏情况一样复杂的一个,其他两个最优情况都是O(n))