选择排序:一次遍历取出数组中最小(大)的数存储到另一个数组中,时间为O(n^2)
# 取出数组中最小的数的索引
def findSmaller(arr):
smallest = arr[0]
smallest_index = 0
for i in range(1,len(arr)):
if arr[i] < smallest:
smallest = arr[i]
smallest_index = i
return smallest_index
def selectionSort(arr):
newArr = []
for i in range(len(arr)):
print(arr)
smallest_index = findSmaller(arr)
# pop函数会将数组中最小的数抽取出来,使数组越来越小
newArr.append(arr.pop(smallest_index))
return newArr
arr = [5,3,6,2,10]
newArr = selectionSort(arr)
print(newArr)