- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
快速排序算法Python 实现
i
i
目 录
快速排序
算法思想
算法步骤
代码示例
PAGE
PAGE 1
快速排序
算法思想
快速排序是一种非常高效的排序算法,采用 “分而治之”的思想,
把大的拆分为小的,小的拆分为更小的。其原理是,对于给定的记录,选择一个基准数, 通过一趟排序后,
将原序列分为两部分,使得前面的比后面的小,然后再依次对前后进行拆分进行快速排序,
递归该过程,直到序列中所有记录均有序。
算法步骤
1:首先取序列第一个元素为基准元素pivot=R[low。] i=low,j=hig。h
2:从后向前扫描,找小于等于pivot的数,如果找到,R[i与]
R[j交]
换,i++。
3:从前往后扫描,找大于pivot的数,如果找到,R[i与]
R[j交]
换,j--。
4:重复 2~3 ,直到i=j返, 回该位置mid=i,该位置正好为 pivot元素。
完成一趟排序后,以 mid 为界,将序列分为两部分,左序列都比 pivot小,有序列都比 pivot 大,然后再分别对这两个子序列进行快速排序。
代码示例
def quick_sort(lists,i,j): if i = j:
return list pivot = lists[i] low = i
high = j while i j:
# 遍历右边,小于基准值的放到左边while i j and lists[j] = pivot:
j -= 1
lists[i]=lists[j]
# 遍历左边,大于基准值的放到右边while i j and lists[i] =pivot:
i += 1
lists[j]=lists[i] # 基准值移动到中间lists[j] = pivot
# 对左边进行排序quick_sort(lists,low,i-1) # 对右边进行排序quick_sort(lists,i+1,high) return lists
if name == main : lists=[30,24,5,58,18,36,12,42,39]
print(排 序前的序列为:) for i in lists:
print(i,end = ) print(\排n 序后的序列为:)
for i in quick_sort(lists,0,len(lists)-1): print(i,end= )
您可能关注的文档
- 考研心理学专业基础综合(多项选择题)高频考点模拟试卷45(题后含.pdf
- 考研心理学专业基础综合(多项选择题)模拟试卷76(题后含答案及解析).pdf
- 考研心理学专业基础综合(简答题)模拟试卷29(题后含答案及解析).pdf
- 考研心理学专业基础综合(简答题)模拟试卷46(题后含答案及解析).pdf
- 考研心理学专业基础综合(简答题)模拟试卷65(题后含答案及解析).pdf
- 考研心理学专业基础综合(综合题)模拟试卷18(题后含答案及解析).pdf
- 考研药学综合(生物化学)历年真题试卷汇编2(题后含答案及解析).pdf
- 考研英语美文赏读(4):抖音为何深受中国年轻人喜爱.docx
- 考研真题 2020安徽大学物理化学入学考研试题(含答案).pdf
- 考研政治(中国近现代史纲要)历年真题试卷汇编2(题后含答案及解析).pdf
最近下载
- 2025-2026学年浙江省温州市鹿城区南浦实验中学七年级(下)期中数学试卷.pdf VIP
- 一台列管式换热器的设计(含装配图)-化工原理课程设计.doc
- 桥梁知识专题讲座课程PPT课件.ppt
- 临床技术操作规范:皮肤病与性病分册 中华医学会.pdf
- 医患沟通技巧ppt课件.pptx
- 2024版糖尿病科普课件(完整版).ppt VIP
- 2022科学课程标准解读及学习心得:科学课程的育人方向.docx VIP
- 黄帝内经-认识五脏六腑课件.ppt
- 温州二中2025(突破训练)020年七年级下学期英语期中试题(有答案,无听力).pdf VIP
- 高三生物二轮复习微专题:PCR技术中的引物课件.pptx
文档评论(0)