python实现各种排序,python元素升序和降序排序

  python实现各种排序,python元素升序和降序排序

  概念

  1.快速排序法,也称为拆分交换法,是冒泡排序法的改进。

  基本思想

  2.在数据中找一个虚拟的中间值,然后把所有计划排序的数据分成两部分。在这些数据中,小于中间值的数据放在左边,大于中间值的数据放在右边,然后左右数据同样处理,直到排序完成。

  实例

  Defquick(data,start,end):#定义了快速排序功能

  Startend: #如果起始值大于结束值

  回车#直接退出程序

  I,j=开始,结束

  结果=data[start]#采用虚拟中间值

  WhileTrue:#循环

  whijiandata[J]=result 3360 #从右向左看。如果找到的数字小于虚拟中值,则停止循环。

  J=j-1#从右向左看,每次位置都是-1。

  Leijanddata [I]=result3360 #从左向右看。如果找到的数字大于虚拟中值,则停止循环。

  I=1#从左向右看,每次位置都是1。

  Ifi: # I和J都停下来,找到对应的位置,判断ij

  Data [i],data [j]=data [j],data [i] #交换位置I和j对应的值。

  Elifi=j3360 #判断i=j

  #把虚中间值和J位置的数交换,虚中间值就变成实中间值了。

  数据[开始],数据[j]=数据[j],数据[开始]

  Break#完成第一次排序,然后用中间值分左右两边。

  Quick(data,start,i-1)#调用快速排序函数,然后对左半部分数据进行快速排序。

  Quick(data,i 1,end)#调用快速排序函数,然后快速排序右半部分数据。

  Data=[6,1,2,7,9,3,4,5,10,8]#定义列表并初始化它

  打印(原始数据为:)

  打印(数据)#输出原始数据

  打印(-)

  Quick(data,0,(len(data)-1))#调用quick sort,数据从位置0开始,到数据长度-1结束。

  打印(排序的数据是:)

  打印(数据)#输出排序后的数据

  打印(-)。以上是python实现元素增量的快速排序方法。希望对你有帮助。更多python学习方向:Python基础课程

  本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: