# -*- conding:utf-8
# @Author :Glad
# @time :2021/3/8 14:13
# @File :选择排序.py
def select_sort(alist):
"""选择排序"""
n = len(alist)
for j in range(n-1): #j:0~ n-2
# j的位置指的是每次比较的起始值
min_index = j
#有了起始比较值:下标为j,和起始比较值的下标的值应该是j+1
for i in range(j+1,n):
if alist[min_index]>alist[i]:
min_index = i
# 交换起始比较值和被比较值的位置后,继续往下寻找比当前的起始比较值小的数据
alist[j],alist[min_index]=alist[min_index],alist[j]
if __name__ =='__main__':
li = [5, 89, 1, 23, 58, 46, 30, 69, 47, 51, 20, 3, 99, 50]
print(li) #输出结果: [5, 89, 1, 23, 58, 46, 30, 69, 47, 51, 20, 3, 99, 50]
select_sort(li)
print(li) #输出结果: [1, 3, 5, 20, 23, 30, 46, 47, 50, 51, 58, 69, 89, 99]
Python_选择排序
最新推荐文章于 2022-07-01 09:22:54 发布