Python排序搜索基本算法之插入排序实例分析


Posted in Python onDecember 11, 2017

本文实例讲述了Python排序搜索基本算法之插入排序。分享给大家供大家参考,具体如下:

插入排序生活中非常常见,打扑克的时候人的本能就在用插入排序:把抽到的一张插入到手上牌的正确位置上。有两种插入排序方法,一种基于比较,另一种基于交换。代码如下:

1.基于比较的插入排序:

# coding:utf-8
def insertionSort(seq):
  length=len(seq)
  for i in range(1,length):
    tmp=seq[i]
    for j in range(i,0,-1):
      if seq[j-1]>tmp:
        seq[j]=seq[j-1]
      else:
        j+=1
        break
    seq[j-1]=tmp
if __name__=='__main__':
  print("三水点靠木测试结果:")
  seq=[8,6,4,9,7,3,2,-4,0,-100,99]
  insertionSort(seq)
  print(seq)

运行结果:

Python排序搜索基本算法之插入排序实例分析

2.基于交换的插入排序:

# coding:utf-8
def insertionSort2(seq):
  length=len(seq)
  for i in range(1,length):
    for j in range(i,0,-1):
      if seq[j]<seq[j-1]:
        seq[j],seq[j-1]=seq[j-1],seq[j]
      else:
        break
if __name__=='__main__':
  print("三水点靠木测试结果:")
  seq=[3,5,9,8,4,2,1,0,-6,12,-8]
  insertionSort2(seq)
  print(seq)

运行结果:

Python排序搜索基本算法之插入排序实例分析

Python 相关文章推荐
寻找网站后台地址的python脚本
Sep 01 Python
python发送邮件功能实现代码
Jul 15 Python
Python进程间通信Queue实例解析
Jan 25 Python
python如何实现内容写在图片上
Mar 23 Python
一些Centos Python 生产环境的部署命令(推荐)
May 07 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
May 15 Python
PyQt5组件读取参数的实例
Jun 25 Python
python 如何将数据写入本地txt文本文件的实现方法
Sep 11 Python
Python小程序之在图片上加入数字的代码
Nov 26 Python
tensorflow实现tensor中满足某一条件的数值取出组成新的tensor
Jan 04 Python
基于python爬取有道翻译过程图解
Mar 31 Python
Python办公自动化之教你如何用Python将任意文件转为PDF格式
Jun 28 Python
python实现二叉树的遍历
Dec 11 #Python
django上传图片并生成缩略图方法示例
Dec 11 #Python
使用Python的package机制如何简化utils包设计详解
Dec 11 #Python
python timestamp和datetime之间转换详解
Dec 11 #Python
Python时间戳使用和相互转换详解
Dec 11 #Python
python的exec、eval使用分析
Dec 11 #Python
Python中eval带来的潜在风险代码分析
Dec 11 #Python
You might like
初级的用php写的采集程序
2007/03/16 PHP
PHP面试题之文件目录操作
2015/10/15 PHP
thinkPHP2.1自定义标签库的导入方法详解
2016/07/20 PHP
PHP切割汉字的常用方法实例总结
2019/04/27 PHP
HR vs CL BO3 第一场 2.13
2021/03/10 DOTA
关于图片按比例自适应缩放的js代码
2011/10/30 Javascript
JSCode all of Brower 全局屏蔽网页右键功能 具体实现
2013/06/05 Javascript
javascript使用onclick事件改变选中行的颜色
2013/12/30 Javascript
jQuery调用RESTful WCF示例代码(GET方法/POST方法)
2014/01/26 Javascript
innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解
2015/03/13 Javascript
js实现同一页面多个运动效果的方法
2015/04/10 Javascript
jquery实现的判断倒计时是否结束代码
2016/02/05 Javascript
jquery实时获取时间的简单实例
2017/01/26 Javascript
实例详解JavaScript中setTimeout函数的执行顺序
2017/07/12 Javascript
Vue.js实现图片的随意拖动方法
2018/03/08 Javascript
layui 弹出层值回传解决方式
2019/11/14 Javascript
JavaScript函数柯里化实现原理及过程
2020/12/02 Javascript
零基础写python爬虫之抓取百度贴吧代码分享
2014/11/06 Python
python图像处理之镜像实现方法
2015/05/30 Python
python字符类型的一些方法小结
2016/05/16 Python
pandas groupby 分组取每组的前几行记录方法
2018/04/20 Python
python实现七段数码管和倒计时效果
2019/11/23 Python
Python创建一个元素都为0的列表实例
2019/11/28 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
pandas数据拼接的实现示例
2020/04/16 Python
html5小程序飞入购物车(抛物线绘制运动轨迹点)
2020/10/19 HTML / CSS
法国综合购物网站:RueDuCommerce
2016/09/12 全球购物
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
运动会通讯稿300字
2014/02/02 职场文书
母亲节演讲稿
2014/05/27 职场文书
法定代表人授权委托书范文
2014/08/02 职场文书
教师党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
2014年公路养护工作总结
2014/12/04 职场文书
博士论文答辩开场白
2015/06/01 职场文书
Nginx实现会话保持的两种方式
2022/03/18 Servers
Java Spring读取和存储详细操作
2022/08/05 Java/Android