python实现排序算法_Python实现插入排序算法示例效果

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

这篇文章主要介绍了Python实现的直接插入排序算法,结合实例形式分析了Python直接插入排序算法的定义与使用相关操作技巧,代码备有较为详尽的注释便于理解,需要的朋友可以参考下

本文实例讲述了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+1]=numbers[j]

j = j-1

#temp所指向元素的最终位置

numbers[j+1] = temp

if __name__=='__main__':

direct_insert_sort(L)

print L

运行结果:

1562Q264563410-1G26.jpg

相关推荐:

python实现二分查找与快速排序实例详解

以上就是Python实现的直接插入排序算法示例的详细内容,更多请关注码农之家其它相关文章!

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值