首页
网站案例
服务项目
关于快上网
新闻动态
网站推广
联系
135-1821-9792
首页
网站案例
服务项目
关于快上网
新闻动态
网站推广
联系
python快速排序实现
import random
num_list = []
for x in range(30):
num_list.append(random.randint(1, 500))
list_len = len(num_list)
print(list_len)
def quick_sort(array, begin, end):
# (1) 104, 17, 510,30,100 这是用来说明的例子,请按前面的序号阅读
# i j
if begin < end:
i, j = begin, end
# 设置临时基准
temp = array[i]
# --------------------------------------------
while i < j:
# 如果列表后边的数,比基准数大或相等,j则前移一位,直到出现第一个比基准数小的数
while (i < j) and (array[j] >= temp):
j = j - 1
# 找到后把第j个元素赋值给第i个元素
array[i] = array[j] # (2)100,17,510,30,100 (4)100, 17, 30, 30, 510
# i j i j <-- j
# 若前边的数比基准数小或相等,i则后移一位,直到出现第一个比基准数大的数
while (i < j) and (array[i] <= temp):
i = i + 1
array[j] = array[i] # (3)100,17,510, 30,510 (5) 00,17,30, 30, 510
# i --> i j i-->ij
# ---------------------------------------------
# 做完第一轮while比较之后,list被分成了两个list,且i=j
array[i] = temp # (6)100,17,30,104,510 这是第一轮结束之后的情况.
# ij
# 此时,以第一轮选择的temp为分割点,分成两个list.左边list里的项都比temp小,右边list里的项都比temp大
# 递归前后半区
quick_sort(array, begin, i - 1)
quick_sort(array, j + 1, end)
return array
print("The sorted result is : ")
quick_sort(num_list, 0, len(num_list)-1)
print(num_list)
分享文章:python快速排序实现
网站路径:
http://kswsj.com/article/gcdohc.html
其他资讯
7.PL_SQL——在PL_SQL程序中内嵌查询语句、DML语句、事物处理语句和游标属性
如何理解css样式的特点与优先选择权
django-admin的使用方法
MapReduce程序单机版运行所需的配置
如何分析Serverless的优势、意义与应用
关于我们
我们是谁
我们服务的客户
我们的团队
我们的服务
网站建设
H5响应式 交互网站
移动端 & 微网站定制
服务流程
行业解决方案
网站建设案例
公司集团
数码电子科技
建筑与设计
安防门禁
管理咨询美容
外贸行业
新闻动态
成都网站建设
成都网站制作
成都网站设计
联系我们
135-1821-9792
公司服务热线
友情链接:
成都广告设计
成都做网站
葆金莱自动门
广告媒介投放
重庆电信回兴机房
微信公众号开发
石膏隔墙
百度推广公司
温江做网站公司
成都网站制作
Copyright © 2009-2022 www.kswsj.com 成都快上网科技有限公司 版权所有
蜀ICP备19037934号
在线咨询
在线咨询
135-1821-9792
在线咨询
拨打电话