python 插入排序
原理
插入排序(InsertionSort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。
步骤
从第一个元素开始,该元素可以认为已经被排序
取出下一个元素,在已经排序的元素序列中从后向前扫描
如果该元素(已排序)大于新元素,将该元素移到下一位置
重复步骤3,直到找到已排序的元素小于或者等于新元素的位置
将新元素插入到该位置后
重复步骤2~5
代码
definsert_sort(list):
n=len(list)
foriinrange(1,n):
#后一个元素和前一个元素比较
#如果比前一个小
iflist[i] #将这个数取出 temp=list[i] #保存下标 index=i #从后往前依次比较每个元素 forjinrange(i-1,-1,-1): #和比取出元素大的元素交换 iflist[j]>temp: list[j+1]=list[j] index=j else: break #插入元素 list[index]=temp returnlist 以上内容为大家介绍了python插入排序,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。
相关推荐HOT
更多>>python类对象和实例对象是一样的吗
python面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“...详情>>
2023-11-06 22:21:27python pyc 文件
一个pyc文件包含了三部分信息:Python的magicnumber、pyc文件创建的时间信息,以及PyCodeObject对象。magicnumber是Python定义的一个整数值。一...详情>>
2023-11-06 16:10:10python的keras训练
Keras模型在输入数据和标签的Numpy矩阵上进行训练。为了训练一个模型,你通常会使用fit函数。文档详见此处。fit(self,x,y,batch_size=32,epochs...详情>>
2023-11-06 15:46:04python装饰器的概念
装饰器一直是我们学习python难以理解并且纠结的问题,想要弄明白装饰器,必须理解一下函数式编程概念,并且对python中函数调用语法中的特性有所...详情>>
2023-11-06 12:05:19