def findSmallest(arr):
smallest = arr[0]#将第一个元素的值作为最小值赋给smallest
smallest_index = 0#将第一个值的索引作为最小值的索引赋给smallest_index
for i in range(1, len(arr)):
if arr[i] < smallest:#对列表arr中的元素进行一一对比
smallest = arr[i]
smallest_index = i
return smallest_index
def selectionSort(arr):
newArr = []
for i in range(len(arr)):
smallest = findSmallest(arr)#一共要调用5次findSmallest
newArr.append(arr.pop(smallest))#每一次都把findSmallest里面的最小值删除并存放在新的数组newArr中
return newArr
print(selectionSort([5, 3, 6, 2, 10]))
运行结果如下:
[2, 3, 5, 6, 10]