python3 快速排序

本文通过一个具体的例子演示了快速排序算法的实现过程。采用逐步展示的方式,详细记录了从初始未排序数组到完全有序数组的每一步变化。最终,通过简单的Python代码实现了对一组随机整数的有效排序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

脚踏实地,好好学算法

# 快速排序法

#  数据源
source = [12, 4, 67, 2, 34, 11, 89, 45, 76, 29]
num = len(source)
left_handler = 0
right_handler = num-1


while 1:
    if source[left_handler] > source[right_handler]:   # 前者比较大 交换结内容
        temp = source[left_handler]
        source[left_handler] = source[right_handler]
        source[right_handler] = temp

    right_handler -= 1
    if left_handler == right_handler:
        print(source)
        left_handler += 1
        right_handler = num-1
        if left_handler == num-1:
            break

print(source)
输出结果

每一步的结果

[2, 4, 67, 11, 34, 12, 89, 45, 76, 29]
[2, 4, 67, 11, 34, 12, 89, 45, 76, 29]
[2, 4, 11, 12, 34, 29, 89, 45, 76, 67]
[2, 4, 11, 12, 34, 29, 89, 45, 76, 67]
[2, 4, 11, 12, 29, 34, 89, 45, 76, 67]
[2, 4, 11, 12, 29, 34, 89, 45, 76, 67]
[2, 4, 11, 12, 29, 34, 45, 67, 76, 89]
[2, 4, 11, 12, 29, 34, 45, 67, 76, 89]
[2, 4, 11, 12, 29, 34, 45, 67, 76, 89]

结果
[2, 4, 11, 12, 29, 34, 45, 67, 76, 89]


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值