Python实现的直接插入排序算法示例


Posted in Python onApril 29, 2018

本文实例讲述了Python实现的直接插入排序算法。分享给大家供大家参考,具体如下:

# -*- coding:utf-8 -*-
'''直接插入的python实现
  时间复杂度O(n**2) 空间复杂度O(1) 稳定
思想:先将前两个元素排序,第三个元素插入前面已排好序列,
    后面的元素依次插入之前已经排好序的序列
'''
author = 'Leo Howell'
L = [89,67,56,45,34,23,1]
def direct_insert_sort(numbers):
  for i in range(1,len(numbers)):
    #temp变量指向尚未排好序元素(从第二个开始)
    temp = numbers[i]
    #j指向前一个元素的下标
    j = i-1
    #temp与前一个元素比较,若temp较小则前一元素后移,j自减,继续比较
    while j>=0 and temp<numbers[j]:
      numbers[j+1]=numbers[j]
      j = j-1
    #temp所指向元素的最终位置
    numbers[j+1] = temp
if __name__=='__main__':
  direct_insert_sort(L)
  print L

运行结果:

Python实现的直接插入排序算法示例

Python 相关文章推荐
浅谈python jieba分词模块的基本用法
Nov 09 Python
Python3.4学习笔记之类型判断,异常处理,终止程序操作小结
Mar 01 Python
Django Celery异步任务队列的实现
Jul 24 Python
django-rest-swagger对API接口注释的方法
Aug 29 Python
如何基于Python + requests实现发送HTTP请求
Jan 13 Python
opencv+python实现均值滤波
Feb 19 Python
python 爬虫 实现增量去重和定时爬取实例
Feb 28 Python
Django框架models使用group by详解
Mar 11 Python
django创建超级用户时指定添加其它字段方式
May 14 Python
python实现密码验证合格程序的思路详解
Jun 01 Python
教你使用Sublime text3搭建Python开发环境及常用插件安装另分享Sublime text3最新激活注册码
Nov 12 Python
Python OpenCV实现图形检测示例详解
Apr 08 Python
Python实现的堆排序算法示例
Apr 29 #Python
Python中实现变量赋值传递时的引用和拷贝方法
Apr 29 #Python
分享一下Python数据分析常用的8款工具
Apr 29 #Python
Python随机函数random()使用方法小结
Apr 29 #Python
Python中py文件引用另一个py文件变量的方法
Apr 29 #Python
python实现类之间的方法互相调用
Apr 29 #Python
Python装饰器原理与简单用法实例分析
Apr 29 #Python
You might like
SONY ICF-SW7600的电路分析
2021/03/02 无线电
如何冲泡挂耳包咖啡?技巧是什么
2021/03/04 冲泡冲煮
基于mysql的bbs设计(二)
2006/10/09 PHP
php求一个网段开始与结束IP地址的方法
2015/07/09 PHP
php使用get_class_methods()函数获取分类的方法
2016/07/20 PHP
详谈PHP中的密码安全性Password Hashing
2017/02/04 PHP
比较详细的javascript对象的property和prototype是什么一种关系
2007/08/06 Javascript
JavaScript的eval JSON object问题
2009/11/15 Javascript
js日期时间补零的小例子
2013/03/05 Javascript
基于Jquery+Ajax+Json实现分页显示附效果图
2014/07/30 Javascript
js轮盘抽奖实例分析
2020/04/17 Javascript
Web安全测试之XSS实例讲解
2016/08/15 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
2019/07/29 Javascript
vue点击页面空白处实现保存功能
2019/11/06 Javascript
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
JavaScript中window和document用法详解
2020/07/28 Javascript
用python记录运行pid,并在需要时kill掉它们的实例
2017/01/16 Python
Python中三元表达式的几种写法介绍
2019/03/04 Python
Python类和实例的属性机制原理详解
2020/03/21 Python
Django 后台带有字典的列表数据与页面js交互实例
2020/04/03 Python
Python scrapy爬取小说代码案例详解
2020/07/09 Python
彻底解决pip下载pytorch慢的问题方法
2021/03/01 Python
浅谈pc和移动端的响应式的使用
2019/01/03 HTML / CSS
html5如何及时更新缓存文件(js、css或图片)
2013/06/24 HTML / CSS
使用HTML5拍照示例代码
2013/08/06 HTML / CSS
wordpress添加Html5的表单验证required方法小结
2020/08/18 HTML / CSS
英国办公家具网站:Furniture At Work
2019/10/07 全球购物
婚礼新郎父母答谢词
2014/01/16 职场文书
医生进修自我鉴定
2014/01/19 职场文书
秋天的雨教学反思
2014/04/27 职场文书
正风肃纪剖析材料范文
2014/10/10 职场文书
2014年单位法制宣传日活动总结
2014/11/01 职场文书
2014年督导工作总结
2014/11/19 职场文书
小学教师岗位职责
2015/04/02 职场文书
隐形的翅膀观后感
2015/06/10 职场文书
CSS基础详解
2021/10/16 HTML / CSS