python排序算法-选择排序
一、选择排序
1.一趟排序纪录最小的数,放在第一个位置
2.再一次排序记录列表无序区最小的数,放在第二个位置
关键
有序区、无序区、无序区最小数的位置
代码
def select_sort(li):
for i in range(len(li) - 1): # i是第几趟
min_s = i # 最小值的位置记为i
for j in range(i + 1, len(li)): # j是从哪看到哪
if li[j] < li[min_s]:
min_s = j # 最小值的位置记为j
li[i], li[min_s] = li[min_s], li[i]
测试
ls2 = [7, 4, 5, 9, 8, 2, 1]
select_sort(ls2)
print(ls2)
输出结果