首页 > 编程语言 >Python快速排序

Python快速排序

时间:2022-08-17 17:44:43浏览次数:52  
标签:greater less Python quicksort array 排序 快速

def quicksort(array):
    less = []
    greater = []
    if len(array) <= 1:
        return array
    pivot = array.pop()
    for x in array:
        if x <= pivot:
            less.append(x)
        else:
            greater.append(x)
    return quicksort(less) + [pivot]+quicksort(greater)


if __name__ == '__main__':
    print(quicksort([1, 3, 5, 2, 4, 85, 65]))

输出:

标签:greater,less,Python,quicksort,array,排序,快速
From: https://www.cnblogs.com/xxxyz/p/16596082.html

相关文章

  • Python & PEP 8 & Style Guide All In One
    Python&PEP8&StyleGuideAllInOnePEP8–StyleGuideforCodehttps://peps.python.org/pep-0008/'单引号'vs"双引号"https://peps.python.org/pep-0......
  • 7-12 排序
    给定N个(长整型范围内的)整数,要求输出从小到大排序后的结果。本题旨在测试各种不同的排序算法在各种数据情况下的表现。各组测试数据特点如下:数据1:只有1个元素;数据2:11个......
  • 13行python代码实现对微信进行推送消息
    Python可以实现给QQ邮箱、企业微信、微信等等软件推送消息,今天咱们实现一下Python直接给微信推送消息。这里咱们使用了一个第三方工具pushplus单人推送实现步骤......
  • [Python学习笔记]Python基础-12 面向对象编程_属性和方法
    内置属性可以使用内置函数dir查看一个对象支持的所有属性和方法,Python中存在很多的内置属性classPerson(object):def__init__(self,name,age)->None:......
  • [Python学习笔记]Python基础-13 面向对象编程_继承和多态
    继承面向对象的编程有三大特性封装:函数是对语句的封装类是对函数和变量的封装继承类和类之间可以人为,手动的建立父子关系父类的属性和方法,子类可以使用......
  • [Python学习笔记]Python基础-14 文件操作
    打开文件python中,使用open内置函数打开并操作一个文件open参数介绍file=open('xxx.txt',r,encoding='utf-8')file:用来指定的打开的文件(文件路径)mode:打......
  • Python爬虫之多线程异步爬虫,非常详细
    Python爬虫之多线程爬虫在使用Python的过程中,我们可能遇到这样一个场景,需要下载某一个网站上的多个资源;例如:我们想下载豆瓣电影Top250所有的宣传图片具体代码如下......
  • Python逆向爬虫之pyquery,非常详细
    系列目录Python逆向爬虫之pyquerypyquery是一个类似jquery的python库,它实现能够在xml文档中进行jQuery查询,pyquery使用lxml解析器进行快速在xml和html文档上操作,它提供了......
  • 手写卷积单元-python
    一个文本卷积模块defcnn():importnumpyasnpresult=[]n,dim=10,30kernels=[np.random.randint(0,2,(i,dim))foriinrange(3,6)]#......
  • 经典排序之堆排序
    堆排序思路堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序可以说是一种利用堆的概念来排序的选择排序。分......