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中关于日期时间处理的问答集锦
Mar 08 Python
django rest framework之请求与响应(详解)
Nov 06 Python
Python实现从log日志中提取ip的方法【正则提取】
Mar 31 Python
python读取中文txt文本的方法
Apr 12 Python
python制作抖音代码舞
Apr 07 Python
Python 实现数据结构中的的栈队列
May 16 Python
python multiprocessing多进程变量共享与加锁的实现
Oct 02 Python
tensorflow实现从.ckpt文件中读取任意变量
May 26 Python
Numpy中ndim、shape、dtype、astype的用法详解
Jun 14 Python
Python库安装速度过慢解决方案
Jul 14 Python
解决pytorch 数据类型报错的问题
Mar 03 Python
2021年pycharm的最新安装教程及基本使用图文详解
Apr 03 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
风味层面去分析咖啡油脂
2021/03/03 咖啡文化
php zend 相对路径问题
2009/01/12 PHP
php实现俄罗斯乘法实例
2015/03/07 PHP
PHP设置进度条的方法
2015/07/08 PHP
详解PHP swoole process的使用方法
2017/08/26 PHP
php实现的AES加密类定义与用法示例
2018/01/29 PHP
PHP时间函数使用详解
2019/03/21 PHP
JavaScript入门教程(8) Location地址对象
2009/01/31 Javascript
js冒泡法和数组转换成字符串示例代码
2013/08/14 Javascript
jQuery异步加载数据并添加事件示例
2014/08/24 Javascript
js字符串截取函数slice、substring和substr的比较
2016/05/17 Javascript
JavaScript判断数字是否为质数的方法汇总
2016/06/02 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
Python入门篇之函数
2014/10/20 Python
python使用nntp读取新闻组内容的方法
2015/05/08 Python
在Python的while循环中使用else以及循环嵌套的用法
2015/10/14 Python
python导入csv文件出现SyntaxError问题分析
2017/12/15 Python
为什么说Python可以实现所有的算法
2019/10/04 Python
Django框架反向解析操作详解
2019/11/28 Python
浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式
2020/05/25 Python
Python3如何使用tabulate打印数据
2020/09/25 Python
美国知名的时尚购物网站:Anthropologie
2016/12/22 全球购物
StubHub新加坡:购买和出售全球活动门票
2017/03/10 全球购物
sort命令的作用和用法
2012/11/04 面试题
研究生自我鉴定范文
2013/10/30 职场文书
企业员工薪酬方案
2014/06/04 职场文书
创建文明城市标语
2014/06/16 职场文书
党校学习个人总结
2015/02/15 职场文书
团员个人总结
2015/02/26 职场文书
2015年宣传部个人工作总结
2015/05/14 职场文书
抢劫罪辩护词
2015/05/21 职场文书
家长会主持词开场白
2015/05/29 职场文书
关于分班的感言
2015/08/04 职场文书
掌握一个领域知识,高效学习必备方法
2019/08/08 职场文书
MySQL面试题讲解之如何设置Hash索引
2021/11/01 MySQL
golang用type-switch判断interface的实际存储类型
2022/04/14 Golang