前言
非常经典的排序方法之一,接下来我来用python简绍一下选择排序,我的主页还有其他排序算法,有需要的可以进行查看
目录
提示:以下是本篇文章正文内容,下面案例可供参考,以生序为例
一、原理
1,有一个li=[5,7,3,4,6]的数列,以第一个数为开始,循环遍历这个列表,5与每个元素进行比较小于5的与它交换位置
2,首先5与7比,7比5大,位置不变,然后5与3比,5比3小,交换位置
3,接下来就是3与4和6比,都要小,所以位置不变,第一次遍历结束,接下来就从7开始
4,同样的步骤,依次比较,最后完成排序
二、使用步骤
1.代码展示
代码如下(示例):
import random # 产生随机数
# 升序为例
def func(li):
for i in range(len(li) - 1):
min_li = i # 将要比较的数的下标记录下来
for j in range(i + 1, len(li)): # i+1是为了不用与自己比较
if li[j] < li[min_li]: # 比较小于标记的第一个数则交换位置(这个是从小到大排序,如果想要排序结果相反改成大于)
li[j], li[min_li] = li[min_li], li[j] # 交换位置
lis = [random.randint(0, 1000) for i in range(0, 1000)] # 生成1000随机大小的随机数
print(lis) # 打印原列表
func(lis)
print(lis) # 打印排序后的列表
总结
以上就是今天要讲的内容,有任何疑问或还想知道其他算法都可以私信或留言