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程序实例(通讯录)
Nov 29 Python
python内存管理分析
Apr 08 Python
单利模式及python实现方式详解
Mar 20 Python
Python 实现文件打包、上传与校验的方法
Feb 13 Python
python实现列表的排序方法分享
Jul 01 Python
如何在Cloud Studio上执行Python代码?
Aug 09 Python
利用rest framework搭建Django API过程解析
Aug 31 Python
Django项目创建到启动详解(最全最详细)
Sep 07 Python
python3使用GUI统计代码量
Sep 18 Python
浅析python redis的连接及相关操作
Nov 07 Python
Python3 使用selenium插件爬取苏宁商家联系电话
Dec 23 Python
python实现批量命名照片
Jun 18 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
MYSQL环境变量设置方法
2007/01/15 PHP
php 删除cookie和浏览器重定向
2009/03/16 PHP
PHP动态分页函数,PHP开发分页必备啦
2011/11/07 PHP
探讨php中防止SQL注入最好的方法是什么
2013/06/10 PHP
使用php将某个目录下面的所有文件罗列出来的方法详解
2013/06/21 PHP
PHP实现递归目录的5种方法
2016/10/27 PHP
如何修改yii2.0自带的user表为其它的表
2017/08/01 PHP
PHP基于curl实现模拟微信浏览器打开微信链接的方法示例
2019/02/15 PHP
Javascript的IE和Firefox兼容性汇编(zz)
2007/02/02 Javascript
top.location.href 没有权限 解决方法
2008/08/05 Javascript
基于jQuery实现文本框缩放以及上下移动功能
2014/11/24 Javascript
JavaScript获取并更改input标签name属性的方法
2015/07/02 Javascript
谈谈Jquery ajax中success和complete有哪些不同点
2015/11/20 Javascript
karma+webpack搭建vue单元测试环境的方法示例
2018/05/24 Javascript
小程序的上传文件接口的注意要点解析
2019/09/17 Javascript
vue实现学生信息管理系统
2020/05/30 Javascript
Vue实现计算器计算效果
2020/08/17 Javascript
[01:34]2014DOTA2 TI预选赛预选赛 选手比赛房大揭秘!
2014/05/20 DOTA
[00:32]2018DOTA2亚洲邀请赛Mineski出场
2018/04/04 DOTA
Python httplib,smtplib使用方法
2008/09/06 Python
利用Python爬虫给孩子起个好名字
2017/02/14 Python
在Windows中设置Python环境变量的实例讲解
2018/04/28 Python
python 将有序数组转换为二叉树的方法
2019/03/26 Python
Anaconda详细安装步骤图文教程
2020/11/12 Python
python中pickle模块浅析
2020/12/29 Python
香港钟表珠宝首饰商城:OneMallTime网摩间
2016/10/14 全球购物
瑞典香水、须后水和美容产品购物网站:Parfym-Klick.se
2019/12/29 全球购物
如何利用find命令查找文件
2016/11/18 面试题
幼儿园教师培训制度
2014/01/16 职场文书
《诚实与信任》教学反思
2014/04/10 职场文书
教师节学生演讲稿
2014/09/03 职场文书
毕业生对母校寄语
2015/02/26 职场文书
周一问候语大全
2015/11/10 职场文书
敬业奉献模范事迹材料(2016精选版)
2016/02/26 职场文书
CSS3实现模糊背景的三种效果示例
2021/03/30 HTML / CSS
Python中json.load()和json.loads()有哪些区别
2021/06/07 Python