插入排序
发布日期:2021-06-30 10:36:24 浏览次数:2 分类:技术文章

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

参考链接1:

参考链接2:

1. 算法步骤

将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。

从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置。(如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入到相等元素的后面。)

2. 动图演示

动图解释:

 未排序的数据

已排序的数据

 索引遍历未排序

待排序

3. 代码实现过程

def insertionSort(arr):    for i in range(len(arr)):        preIndex = i-1#i代表未排序的第一个;i-1代表已排序的最后一个。        current = arr[i]#将未排序的这个存起来,防止前面数据后移覆盖        while preIndex >= 0 and arr[preIndex] > current:            arr[preIndex+1] = arr[preIndex]            preIndex-=1        arr[preIndex+1] = current    return arr

 

 

转载地址:https://it-chengzi.blog.csdn.net/article/details/105138293 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:数据结构的分类
下一篇:选择排序

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月24日 06时21分37秒