选择排序python

选择排序(Selection sort): 每一趟从列表 无序区 元素中选择最小的一个元素作为首元素,再一趟选择列表无序区最小的数放到第二个位置上,直到排完为止

选择排序简单易懂的形式:

def select_sort_simple(li):
    li_new = []  # 创建新列表
    for i in range(len(li)):
        min_val = min(li)  # 选出最小值
        li_new.append(min_val)  # 将最小值添加到新列表
        li.remove(min_val)  # 移除原列表的最小值,避免重复选择
    return li_new

代码实现:

def select_sort(li): # li为列表   
    for i in range(len(li)-1):  # 最后一趟排好序后剩余最后一个数自然归位
        min_loc = i  # 第一趟假设第一个数为最小数
        for j in range(i+1, len(li)):  # 遍历无序区
            if li[j] < li[min_loc]:  # 若无序区有更小的数
                min_loc = j  # 则将最小数下标赋值给min_loc
        li[min_loc], li[i] = li[i], li[min_loc] # 将每趟最小的放到有序区
posted @   天才九少  阅读(23)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示