算法描述: 是一种简单直观的排序算法,每次一轮遍历都找到当前最小的元素并和未排序元素的第一个元素交换位置。
算法步骤:
- 在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,
- 放到已排序序列的末尾,
- 以此类推,直到所有元素均排序完毕。
代码:
def SelectionSort(arr):
for i in range(len(arr)-1):
minIndex = i
for j in range(i+1, len(arr)):
if arr[j] < arr[minIndex]:
minIndex = j
arr[i], arr[minIndex] = arr[minIndex], arr[i]
return arr