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]