Python选择排序算法(一)

本文介绍了选择排序算法的原理,并通过Python代码展示了选择排序的过程,从生成随机数组到逐步排序,最终得到升序排列的数组。算法思路源于B站上的教学视频。
摘要由CSDN通过智能技术生成

选择排序算法简单理解为:遍历一个数组,从索引为0开始和后面的索引的值对比,找到最小的,和其掉换位置,以此类推。

代码展示:

# coding:utf-8

import random


# Get min value function
def get_min(arg):
    result = arg[0]
    for i in range(len(arg)):
        if result > arg[i]:
            result = arg[i]
    return result


# Select sort function come true
def select_sort(arr):
    for i in range(len(arr)):
        min_value = get_min(arr[i:])
        if arr[i] > min_value:
            arr[arr.index(min_value)] = arr[i]
            arr[i] = min_value
            print("遍历过程中:", arr)
    return arr


if __name__ == '__main__':
    arr_list = [each for each in range(20)]
    random.shuffle(arr_list)
    print("生成随机数组:", arr_list)
    select_sort(arr_list)
    print("排序后数组:", arr_list)

参考结果:

生成随机数组: [16, 9, 15, 19, 6, 7, 10, 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值