首页 > 编程语言 >排序算法(一):插入排序

排序算法(一):插入排序

时间:2023-05-18 17:32:37浏览次数:42  
标签:arr 插入排序 元素 插入 算法 key 序列 排序


# author:闫振兴
# datetime:2020/5/20 18:14
# software: PyCharm
"""
文件说明:
"""
#encoding:utf-8
# 插入排序:将第一待排序序列第一个元素看做一个有序序列,把第二个元素到最后一个元素当成是未排序序列。
#           从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置。
#           ( 如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入到相等元素的后面。)
def InsertSort(arr):
    if len(arr) <= 0:
        return
    else:
        for i in range(1, len(arr)):
            key = arr[i]
            j = i - 1
            while j >= 0 and key < arr[j]:
                arr[j + 1] = arr[j]
                j -= 1
            arr[j + 1] = key
        return arr


arr = [23, 9, 56, 8, 57, 87, 899]
print(InsertSort(arr))

 

标签:arr,插入排序,元素,插入,算法,key,序列,排序
From: https://blog.51cto.com/u_16119277/6306208

相关文章

  • 6-1 数组排序输出(函数模板)
    6-1数组排序输出(函数模板)分数 10全屏浏览题目切换布局作者 何振峰单位 福州大学对于输入的每一批数,按从小到大排序后输出。一行输入为一批数,第一个输入为数据类型(1表示整数,2表示字符型数,3表示有一位小数的浮点数,4表示字符串,0表示输入结束......
  • 树形结构排序1
    CREATETABLE`house_structure`(`id`varchar(32)CHARACTERSETutf8mb4COLLATEutf8mb4_general_ciNOTNULLCOMMENT'房源结构id',`house_name`varchar(50)CHARACTERSETutf8mb4COLLATEutf8mb4_general_ciNOTNULLCOMMENT'房源结构名称',`......
  • Java实现输出九九乘法表—for循环和递归算法
    Java实现输出99乘法表for循环publicclassninenine{publicstaticvoidmain(String[]args){for(inti=1;i<10;i++){for(intj=1;j<=i;j++){System.out.printf("%d*%d=%d\t",j,i,j*i);}......
  • python中对列表元素大小排序(冒泡排序法,选择排序法和插入排序法)—排序算法
    前言排序(Sorting)是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列。本文主要讲述python中经常用的三种排序算法,选择排序法,冒泡排序法和插入排序法及其区别。通过对列表里的元素大小排序进行阐述。一、选择排序法选择......
  • [SEO知识讲解] 百度推出惊雷算法SEO大神100条实战经验(二)!(完结)
    本文转载自:[SEO知识讲解]百度推出惊雷算法SEO大神100条实战经验(二)!(完结)更多内容请访问钻芒博客:https://www.zuanmang.net[SEO知识讲解]百度推出惊雷算法SEO大神100条实战经验(一)接后续:四、关键词研究57、关键字是你的指南针——如果你不了解你的关键词,你不知道你的关键词......
  • [SEO知识讲解] 百度推出惊雷算法
    本文转载自:[SEO知识讲解]百度推出惊雷算法更多内容请访问钻芒博客:https://www.zuanmang.net利用点击等用户行为,来提升网站关键词排名,已经是seo行业公开的秘密。对于这个行为,百度是不会不知晓的,百度准备推出惊雷算法,来打击刷点击作弊行为,就是在这个背景下产生的。据相关渠道获悉......
  • [SEO知识讲解] 百度推出惊雷算法 SEO大神100条实战经验(一)
    本文转载自:[SEO知识讲解]百度推出惊雷算法SEO大神100条实战经验(一)更多内容请访问钻芒博客:https://www.zuanmang.net文章是老的,东西是好(经典)的。做SEO的必读!这是一篇翻译的文章,原作者是BrianDean,一个很厉害的SEO工作者。他通过自身5年的SEO工作经验总结了100个经验教训,涉......
  • 代码随想录算法训练营第九天|28. 找出字符串中第一个匹配项的下标、459. 重复的子字符
    【参考链接】28.找出字符串中第一个匹配项的下标【注意】1.kmp解决的就是字符串匹配的问题。2.kmp如何知道匹配过哪些字符串,并跳到匹配过的内容后面的字符。---前缀表3.找到一个子字符串里它的最长相等前后缀。4.前缀是包含首字母,不包含尾字母的所有子串;后缀只包含尾字母,不......
  • 基于算法通信过程中的常用协议介绍
    基于算法通信过程中的常用协议介绍1、HTTP(HypertextTransferProtocol):HTTP是一种应用层协议,用于客户端和服务器之间的通信。它基于请求-响应模型,通过发送HTTP请求和接收HTTP响应来进行通信。HTTP协议常用于Web应用中,可以用于传输算法请求和响应数据。2、REST(Representation......
  • 基于爬山优化算法的三维曲面极值搜索matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:   2.算法涉及理论知识概要       爬山法是一种优化算法,其一般从一个随机的解开始,然后逐步找到一个最优解(局部最优)。假定所求问题有多个参数,我们在通过爬山法逐步获得最优解的过程中可以依次分别将某个参数的值增加或者......