循环
def select_sort(A):
lent=len(A)
for i in range(lent-1,0,-1):
aimi=i
for j in range(i):
if A[j]>A[aimi]:
aimi=j
A[aimi],A[i]=A[i],A[aimi]
return A
A=[5,1,4,5,9,3,2]
print(select_sort(A))
递归
import random
def sel_sort(seq,n):
if n==0:
return
# 最大元素的位置
max_j=n
for i in range(n):
if seq[i]>seq[max_j]:
max_j=i
print(max_j)
seq[n],seq[max_j]=seq[max_j],seq[n]
print(seq)
sel_sort(seq,n-1)
array=[random.randint(1,1000) for i in range(10)]
# alist=[1,4,3,2,8,6,3]
# sel_sort(alist,len(alist)-1)
# print(alist)
random.shuffle(array)
print(array)
sel_sort(array,9)
print(array)