位置: 编程技术 - 正文

Python编程中归并排序算法的实现步骤详解(归并代码)

编辑:rootadmin

推荐整理分享Python编程中归并排序算法的实现步骤详解(归并代码),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python数据合并的主要函数有哪些?,归并算法python,python合并数据集,python 归并排序详解,归并算法python,python数据合并的主要函数有哪些?,python中的并,python 归并排序详解,内容如对您有帮助,希望把文章链接给更多的朋友!

基本思想:归并排序是一种典型的分治思想,把一个无序列表一分为二,对每个子序列再一分为二,继续下去,直到无法再进行划分为止。然后,就开始合并的过程,对每个子序列和另外一个子序列的元素进行比较,依次把小元素放入结果序列中进行合并,最终完成归并排序。归并操作过程:

申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列设定两个指针,最初位置分别为两个已经排序序列的起始位置比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置重复步骤3直到某一指针达到序列尾将另一序列剩下的所有元素直接复制到合并序列尾上述说法是理论表述,下面用一个实际例子说明:

例如一个无序数组

首先将这个数组通过递归方式进行分解,直到:

然后开始合并排序,也是用递归的方式进行:

两个两个合并排序,得到:

上一步中,其实也是按照本步骤的方式合并的,只不过由于每个list中一个数,不能完全显示过程。下面则可以完全显示过程。

初始:

Python编程中归并排序算法的实现步骤详解(归并代码)

第1步,顺序从a,b中取出一个数字:2,1 比较大小后放入c中,并将该数字从原list中删除,结果是:

第2步,继续从a,b中按照顺序取出数字,也就是重复上面步骤,这次是:2,3 比较大小后放入c中,并将该数字从原list中删除,结果是:

第3步,再重复前边的步骤,结果是:

最后一步,将6追加到c中,结果形成了:

通过反复应用上面的流程,实现[1,2,3,6]与[7]的合并

最终得到排序结果

本文列举了三种python的实现方法:

方法1:将前面讲述的过程翻译过来了,略先拙笨

方法2:在按照顺序取数值方面,应用了list.pop()方法,代码更紧凑简洁

方法3:原来在python的模块heapq中就提供了归并排序的方法,只要将分解后的结果导入该方法即可。

使用Python判断质数(素数)的简单方法讲解 质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。素数在数论中有着很重要的地位。比1大但不是素数的

Python环境下搭建属于自己的pip源的教程 一、安装pip2pi工具:pipinstallpip2pi或:

Python使用Paramiko模块编写脚本进行远程服务器操作 简介:paramiko是python(2.2或更高)的模块,遵循SSH2协议实现了安全(加密和认证)连接远程机器。安装所需软件包:

标签: 归并代码

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

上一篇:Python手机号码归属地查询代码(python 电话号码)

下一篇:使用Python判断质数(素数)的简单方法讲解(python函数判断质数)

  • 实际退税额怎么算
  • 生产设备改扩建会计分录
  • 设立登记核准通知书未签名不能办理其他业务
  • 金税四期上线后对企业的影响
  • 免税农产品发票开具时税率怎么选
  • 外贸公司进项票要专票还是普票
  • 会计核算形式的主要区别
  • 房屋契税是按照发票上的不含税价格交吗
  • 购入资产的入账价格一般是以该项资产的什么反应
  • 赠送产品能直接用吗
  • 货币的兑换是怎么决定的
  • 预收款 交税
  • 企业的福利费如何使用
  • 纳税人跨县(市、区)是指
  • 企业购买的土地计入无形资产
  • 有进项税额转出怎么结转增值税
  • 旅行社代订机票发票报销
  • 电脑怎么更新系统日期
  • 企业分配利润的原则
  • 职工福利费扣除率是多少
  • 电脑中毒了怎么弄
  • 支付工程款需要什么财务手续
  • windows11蓝牙问题
  • 工商企业年报网上申报流程
  • php的pdo
  • win10任务视图怎么用
  • 最高跑分纪录的显卡是什么
  • 房地产佣金手续费财务处理
  • 分批付款怎么确认收入
  • 预提费用新会计准则叫什么科目
  • mac如何使用php
  • 将城镇生活垃圾直接用作肥料
  • 企业利润取出税费有哪些
  • 投资者减除费用60000
  • 一个楼盘可以开盘几次
  • Gumbel-Softmax完全解析
  • php判断useragent
  • 承租方的物品如何处理
  • 勒索软件,网络不稳定
  • unix命令大全详解
  • 织梦栏目内容不显示
  • python操作csv
  • 动态sql怎么执行
  • 工程施工与工程结算对冲分录
  • 哪些行业不用交税
  • 增值税专票什么用处
  • 小规模纳税人转一般纳税人的条件
  • 政府专项基金属于什么类
  • 跨年后发票作废
  • 小企业会计准则坏账怎么处理
  • 挂靠公司收的税费计入什么科目?
  • 盘亏存货可以转回来吗
  • 企业办公楼房产税如何征收
  • 广告公司个体户税率
  • 设置资产处置损益的依据
  • 原材料暂估入库成本结转处理
  • 现金流量的折现值公式
  • 蓝字发票认证怎么操作
  • 红字冲销法可能会涉及的摘要有
  • 旅行社财务会计工作内容
  • sqlserver索引语句
  • sql server错误和使用情况报告
  • mysql批量删表
  • xp安装声卡驱动
  • win10 19043.1237
  • pcalc是什么软件
  • 云存储服务怎么打开
  • win7待机时间在哪调
  • win8桌面不显示
  • js设置iframe隐藏
  • cssfixed中浮动
  • Python 中urls.py:URL dispatcher(路由配置文件)详解
  • jQuery ajax MD5实现用户注册即时验证功能
  • Unity Enemy behaviour
  • javascript常用类型
  • javascript test
  • 职称申报结束多久公示
  • 广西壮族自治区图书馆
  • 企业投资项目备案表模板
  • 什么是增值税税率是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设