位置: 编程技术 - 正文

Python实现快速排序算法及去重的快速排序的简单示例(python快速排序最简单写法)

编辑:rootadmin

推荐整理分享Python实现快速排序算法及去重的快速排序的简单示例(python快速排序最简单写法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python快速排序最简单写法,python写快速排序,python写快速排序,python快排函数,python快速排序最简单写法,python快排函数,python3 快速排序,python3 快速排序,内容如对您有帮助,希望把文章链接给更多的朋友!

快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用。

该方法的基本思想是:

1.先从数列中取出一个数作为基准数。

2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。

3.再对左右区间重复第二步,直到各区间只有一个数。

现在通过一个实例来说明快排。

比如有一个数组:

Python实现快速排序算法及去重的快速排序的简单示例(python快速排序最简单写法)

第一步:选取一个基准数,不要被这个名词吓到了,你可以把它看作是一个比较大小的数,因为排序就是比较大小,

比如我选取最后一个数3为基准数,依次把数组的数和3比较,比3小的放左边,比3大的放右边,这样有如下结果:

第二步:判断区间个数,经过第一步后左边区间只有一个数了,没有数字再和它比较了,因此不需要重复操作,右边区间还有:

重复第一步,选取5作为基准数,得到比较结果:

这样左右两边区间都只有一个数了,这就标志着排序完成,最后把所有区间合并就得到排序结果:

相比C、C#、JAVA之类的是不是简单多了^.^

TIP:去重的快速排序如下, 只需要把集合修改为单值元素,这里我们使用Python3来演示:

输出:

也可以直接使用, 集合(set)进行排序和去重.

Python读写txt文本文件的操作方法全解析 一、文件的打开和创建f=open('/tmp/test.txt')f.read()'hellopython!nhelloworld!n'fopenfile'/tmp/test.txt',mode'r'at0x7fbefc二、文件的读取步骤:打开--读取--关闭f=open('/t

Python使用自带的ConfigParser模块读写ini配置文件 在用Python做开发的时候经常会用到数据库或者其他需要动态配置的东西,硬编码在里面每次去改会很麻烦。Python自带有读取配置文件的模块ConfigParser,

Python处理JSON时的值报错及编码报错的两则解决实录 1、ValueError:Invalidcontrolcharacterat:line1column(char)使用json.loads(json_data)时,出现:ValueError:Invalidcontrolcharacterat:line1column(char)出现错误的原因是字符

标签: python快速排序最简单写法

本文链接地址:https://www.jiuchutong.com/biancheng/387730.html 转载请保留说明!

上一篇:python结合selenium获取XX省交通违章数据的实现思路及代码(python结合了什么的高级语言)

下一篇:Python读写txt文本文件的操作方法全解析(python中txt文件的读写)

  • 亏损企业股权转让
  • 退个税手续费增值税怎么计算
  • 销售赠送赠品会计处理
  • 实收资本记账凭证摘要怎么写
  • 房地产企业所得税汇算清缴
  • 委托境外研发费用不超过境内符合条件的研发费用
  • 交易性金融资产公允价值变动计入
  • 资本公积转为实收资本会计等式
  • 小企业净资产收益率
  • 国债利润收入属于收入吗
  • 经营现金流动比率公式
  • 领定额发票需要报税吗
  • 工程结算科目属于哪一类
  • 个税前几个月没有工资,累计减除费用会累计吗
  • 小规模纳税人未达到起征点的增值税怎么做账
  • 苹果手机上显示LTE是什么意思
  • windows10无法打开图片
  • 怎么修改以前年度的账
  • 对外贸易法律的特征包括
  • 出纳日记账填写样本
  • smtplib教程
  • web投票系统源码
  • 大理石横切面
  • sgmain.exe - sgmain是什么进程 有何作用
  • 什么是所得税收入
  • 费用分摊的分录
  • igfxem.exe是什么进程
  • Loughrigg Tarn的日出,英国英格兰湖区安布尔塞德 (© John Finney photography/Getty Images)
  • 发票开具的有哪些原则
  • 资产负债表的编制方法
  • 北方针叶林的特征有哪些?
  • vue3的理解
  • 小规模未开票收入如何申报增值税
  • vue2和vue3区别面试题
  • 一个用于表示特定的web页的标识符url称为
  • web前端面试题2021及答案
  • 利息发票可以抵扣吗
  • 个人取得的劳务报酬所得,如何缴纳个税
  • 红字记账是什么意思
  • 企业账户在银行买黄金可以开发票吗
  • MySQL/Postgrsql 详细讲解如何用ODBC接口访问MySQL指南
  • 存货跌价准备的账务处理
  • 一般纳税人季度所得税怎么计算
  • 进项税额与库存的关系
  • 企业防止股权收益的措施
  • 管理费用具体例子
  • 广告宣传费纳税调整额怎么算
  • 会计账簿的种类包括总账明细账日记账和其他辅助性账簿
  • MySQL:Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEM
  • 备份还原工具怎么用
  • MySQL利用命令行工具启动和关闭的命令是什么
  • 全民用车app下载
  • Fedora 21顶栏日期显示不全的解决方法
  • win8创建密码
  • win10的java环境该怎么配置?java环境变量配置介绍
  • windows server 2016 自动登录
  • cmd命令 cd
  • win7如何彻底关闭135端口 dcom
  • win7屏幕太亮了怎么调电脑
  • mac小技巧
  • imjpmig是什么进程
  • WinXp x64sp企业订户最新完整纯净版安装指南
  • cmd.exe是什么意思
  • 退出清理磁盘
  • 自定义ui界面
  • [置顶]bilinovel
  • linux dev/sr0
  • 批处理文件夹内文件名
  • 前端自动化开发软件
  • shell脚本循环复制文件
  • unity3d导出工程文件
  • jQuery实现表格行和列的动态添加与删除方法【测试可用】
  • python的读写文件
  • python编程简单案例
  • 广东省电子学校
  • 国税局调地方
  • 关于研发费用的审计程序,下列说法中错误的是
  • 江苏省国税务局
  • 江西医保缴费怎么交
  • 增值税即征即退申报表怎么填
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设