算法排序——选择排序

前言

非常经典的排序方法之一,接下来我来用python简绍一下选择排序,我的主页还有其他排序算法,有需要的可以进行查看

目录

文章目录

前言

一、原理

二、使用步骤

1.代码展示

总结



提示:以下是本篇文章正文内容,下面案例可供参考,以生序为例

一、原理

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)  # 打印排序后的列表

总结

以上就是今天要讲的内容,有任何疑问或还想知道其他算法都可以私信或留言

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值