博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构之排序三:插入排序
阅读量:5243 次
发布时间:2019-06-14

本文共 577 字,大约阅读时间需要 1 分钟。

def insert_sort(ary):    n = len(ary)    for i in range(1,n):        if ary[i] < ary[i-1]:            temp = ary[i]            index = i           # 待插入的下标            for j in range(i-1,-1,-1):  # 从i-1 循环到 0 (包括0)  最后一个参数是步长,倒着取值要为负                if ary[j] > temp :                    ary[j+1] = ary[j]                    index = j   # 记录待插入下标                else:                    break            ary[index] = temp    return ary

 时间复杂度::

  平均:O(n^2)

  最坏:O(n^2)  # 倒序

  最好:O(n)  # 有序的时候

空间复杂度:O(1)

稳定性:稳定

转载于:https://www.cnblogs.com/mengxiangtiankongfenwailan/p/11340960.html

你可能感兴趣的文章
树状数组及其他特别简单的扩展
查看>>
zookeeper适用场景:分布式锁实现
查看>>
110104_LC-Display(液晶显示屏)
查看>>
httpd_Vhosts文件的配置
查看>>
php学习笔记
查看>>
普通求素数和线性筛素数
查看>>
React Router 4.0 基本使用
查看>>
PHP截取中英文混合字符
查看>>
【洛谷P1816 忠诚】线段树
查看>>
电子眼抓拍大解密
查看>>
poj 1331 Multiply
查看>>
tomcat7的数据库连接池tomcatjdbc的25个优势
查看>>
Html 小插件5 百度搜索代码2
查看>>
P1107 最大整数
查看>>
多进程与多线程的区别
查看>>
Ubuntu(虚拟机)下安装Qt5.5.1
查看>>
java.io.IOException: read failed, socket might closed or timeout, read ret: -1
查看>>
java 常用命令
查看>>
CodeForces Round #545 Div.2
查看>>
卷积中的参数
查看>>