python五大算法之插入排序和归并排序

应急响应靶场练习Linux-web-2 本次应急响应靶机采用的是知攻善防实验室的Linux-2应急响应靶机靶机下载地址为:相关账户密码: root/Inch@957821.(第一个为大写的i,记住要带最后的点.)1.该攻击者的IP为192.168.20.12.攻击方式应该是通过/index.php?user-app-register上传了一个webshell,然后使用蚁剑管理webshell之后再次上传version2.php进行提权.3.攻击者修改了phpmyadmin数据库的管理员密码。 阅读详情

插入排序

def direct_sort(list1):
    for i in range(1,len(list1)):
        temp = list1[i]
        j = i-1
        while j >= 0 and temp < list1[j]:
            list1[j+1] = list1[j]
            j -= 1
        list1[j+1] = temp
    return list1

调用函数

list1 = [5,6,3,8,5,1]
print(direct_sort(list1))

输出结果为:

[1, 3, 5, 5, 6, 8]

归并排序,我还没有研究透这个实现过程,请大佬们赐教

def func(data):
    if len(data) == 1:
        return data
    mid = len(data) // 2
    left = data[:mid]
    right = data[mid:]
    left_func = func(left)
    right_func = func(right)

    return func2(left_func,right_func)
def func2(left, right):
    result = []
    while len(left)>0 and len(right)>0:
        if left[0]<right[0]:
            result.append(left.pop(0))
            
        else:
            result.append(right.pop(0))
    result += left
    result += right
    return result

调用输出结果为:

print(func(list1))

[1, 3, 5, 5, 6, 8]
避坑指南:Windows11语言包安装后部分界面仍显示中文的终极解决方案 本文详细解析了Windows11语言包安装后部分界面仍显示中文的问题,提供了从基础到进阶的完整解决方案。通过PowerShell命令、注册表清理和系统文件检查等方法,帮助用户彻底解决语言显示不一致的问题,确保系统界面语言统一。 阅读详情

相关推荐

基于溶解气体分析(DGA)的变压器DGA数据故障诊断含代码含数据

在拥有可靠的DGA数据的前提下,结合机器学习分类算法,可以实现变压器的故障诊断。在此数据集的基础上,用随机森林跑出的结果如图。

Jason_Orton的博客 2706

Python排序算法(六)——归并排序(MERGE-SORT)

有趣的事,Python永远不会缺席! 如需转发,请注明出处:小婷儿的pythonhttps://www.cnblogs.com/xxtalhr/p/10800699.html 一、归并排序(MERGE-SORT)概念   归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divi...

小麦粒的Python 1906

AD9176 双通道高速DAC调试记录

AD9176是一款高性能双通道16位数模转换器,支持高达12.6GSPS采样率,专为多频段无线应用设计。该器件集成8通道15.4Gbps JESD204B接口,支持复数/实数数据输入,每通道最大输入速率达3.08GSPS。关键特性包括:48位高精度NCO、灵活的插值滤波器(最高12倍)、优异的动态性能(SFDR达-83dBc@1.84GHz)以及多芯片同步功能。硬件调试需重点关注时钟配置(建议250M基准时钟)、JESD参数匹配及交流耦合设计。测试指标要求SFDR>55dBc@312MHz,实测值可达65d

universaldata的博客 1496

Python版插入排序,归并排序,快速排序

由于写算法实验,用C++写的,最近学Python正好用Python实现熟练一下,发现简洁很多,用着太方便了 下面贴代码,这俩个排序比较简单,不加注释了。 #_*_coding:utf_8_ import random import time class Sort(): def __int__(self): self.array = [] self.si

Code is to be happy 931

【RK3588开发记录】超详细的RK3588修改debug串口波特率为115200

修改RK3588的debug串口为115200

Crazydrams的博客 4807

告别手动画图!用SUMO的netedit快速搭建高速公路交织区路网(附完整XML文件)

本文详细介绍了如何使用SUMO的netedit工具高效构建高速公路交织区路网,避免手动绘图的低效与错误。通过实战案例和XML文件示例,帮助交通工程专业学生快速掌握复杂道路结构建模技巧,特别解析了spreadType参数设置和速度单位换算等关键操作。

weixin_29085865的博客 261

插入排序、选择排序、快速排序以及归并排序(附Python代码)

排序算法基本原理以及复杂度等知识点可跳转至该博客了解https://www.cnblogs.com/onepixel/p/7674659.html,本博客主要对排序算法性能进行对比以及记录对比过程发现的问题 1. 插入排序和选择排序的对比 1.1 插入排序:从列表第一个元素 List[0] 开始每次取出列表一个元素,与该元素的前面元素进行比较,如果前面元素比该元素大,则把前面元素后移,直到前面元素不比该元素大,则插入。 插入排序示例 lst = [1,4,2,7,5] -------------.

走过路过不要错过 1042

Vue3 - 详细实现虚拟列表前端虚拟滚动列表解决方案,vue3长列表优化之虚拟列表,解决列表动态高度不固定高度及图片视频图文异步请求加载问题,虚拟列表DOM大量数据同时加载渲染卡顿太慢及下滑列表闪烁

vue3,vue3虚拟列表,用vue3实现一个虚拟列表,长列表高度不一致如何实现虚拟滚动加载列表,虚拟列表有图片视频,图文列表,上万条数据同时渲染解决,长列表dom渲染太卡,列表滚动条加载超多数据,瀑布流,在Vue3中如何实现列表的虚拟滚动,虚拟列表滑动白屏闪烁闪一下,虚拟列表每个项的高度不确定,可动态改变高度,vue3虚拟滚动列表,页面数据太多加载很慢怎么办,vue3实现不定高的虚拟列表,定高和不定高,虚拟列表非固定高度,vue3长列表优化之虚拟列表实现,vue3虚拟列表高度不固定,用vue3实现一个虚拟

🏆 前端领域优质创作者 1万+

python 实现插入排序、冒泡排序、归并排序

def InsertSort(A): '''插入排序算法:传入一个数组,对数组进行排序''' print('排序前的顺序:',A) length=len(A) for i in range(1,length):#从第二个开始 key=A[i] j=i-1 while j&gt;=0 and A[j]&gt;key...

JasonStudy 447

Vision 机器视觉案例 之 零件边缘缺陷检测

缺陷检测工具

机器视觉李小白的博客 1387

FPGA实现PCIe接口

PCI Express(PCIe)是一种高速串行计算机扩展总线标准,在FPGA中实现PCIe接口可以实现与主机系统的高速数据通信。以下是FPGA实现PCIe接口的关键技术要点。

whm128的博客 1465

第2章《算法基础》:插入排序,归并排序,python实现

本章主要介绍了两个基础排序算法,插入排序和归并排序算法,接下来用python语言对这两个算法进行实现。 插入排序 算法思路:类似打牌场景,从桌子上每次抽取一张牌,然后从右往左扫描我们手中的牌,一一进行对比(手中的牌已排好序),然后插入到适中位置 def insert_sort(A): for i in range(1,len(A)): key = A[i] j = i - 1 whi...

BGoodHabit的博客 346

【GeoDa实用技巧100例】024:geoda计算全局(局部)莫兰指数Moran‘s I,LISA聚类地图,显著性地图

【GeoDa实用技巧100例】024:geoda计算全局(局部)莫兰指数Moran's I,单变量莫兰指数,双变量莫兰指数计算,LISA聚类地图,显著性地图,Geoda双变量莫兰指数是一种强大的地理空间数据分析工具。

智慧空间实验室 6052

Python数据结构和算法(一):基于内存的五大排序算法!

文章目录前文冒泡排序插入排序选择排序快速排序 前文   学习数据结构和算法很久了,坚持刷题了半年多,自己也一直想总结关于Python数据结构和算法,于是,就从这篇开始吧!《数据结构和算法》作为程序员的必修课,一直是大家不断努力的方向,不过网上针对该门课的大牛大多数都是java、c++之类的,很少有用到Python来介绍的,所以我就出一系列依据Python来介绍的博客,希望大家都能有所收获!   我...

weixin_42681866的博客 705

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

python算法_算法基础:五大排序算法Python实战教程

本文为 AI 研习社编译的技术博客,原标题 :A tour of the top 5 sorting algorithms with Python code作者 | George Seif翻译 | 邓普斯杰弗校对 | shunshun 整理 | 菠萝妹原文链接:https://medium.com/@george.seif94/a-tour-of-the-top-5-sorting-...

weixin_39940253的博客 99

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

python常用算法有哪些_Python实现十大常用排序算法

原标题:Python实现十大常用排序算法一、冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,一层一层的将较大的元素往后移动,其现象和气泡在上升过程中慢慢变大类似,故成为冒泡排序。1.过程图解 2.算法思想从第一个和第二个开始比较,如果第一个比第二个大,则交换位置,然后比较第二个和第三个,逐渐往后经过第一轮后最...

weixin_40006185的博客 366

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Python 实现十大经典排序算法

目录排序算法分类一、冒泡排序(Bubble Sort)1、原理2、步骤3、动画演示4、代码实现5、具体示例二、选择排序(Selection Sort)1、原理2、步骤3、动画演示4、代码实现5、具体示例三、插入排序(Insertion Sort)1、原理2、步骤3、动画演示4、代码实现5、具体示例四、希尔排序(Shell Sort)1、原理2、步骤3、动画演示4、代码实现5、具体示例五、归并排序(Merge Sort)1、原理2、步骤3、动画演示4、代码实现5、具体示例六、快速排序(Quick Sort)1

BOB'S BLOG 1万+

python归并排序函数详解_python 实现归并排序算法

python数据结构与算法总结python常用的数据结构与算法就分享到此处,本月涉及数据结构与算法的内容有如下文章:《数据结构和算法对python意味着什么?》《顺序表数据结构在python中的应用》《python实现单向链表数据结构及其基本方法》《python实现单向循环链表数据结构及其方法》《python实现双向...文章python之战2019-04-241168浏览量算法基础:五大排序算法...

weixin_39568926的博客 1042

python五大算法_算法基础:五大排序算法Python实战教程

本文为 AI 研习社编译的技术博客,原标题 :A tour of the top 5 sorting algorithms with Python code作者 |George Seif翻译 | 邓普斯•杰弗校对 | shunshun 整理 | 菠萝妹原文链接:https://medium.com/@george.seif94/a-tour-of-the-top-5-sorting-algorit...

weixin_29417071的博客 130

python五大排序_算法基础:五大排序算法Python实战教程

本文为 AI 研习社编译的技术博客,原标题 :A tour of the top 5 sorting algorithms with Python code作者 |George Seif翻译 | 邓普斯杰弗校对 | shunshun 整理 | 菠萝妹原文链接:https://medium.com/@george.seif94/a-tour-of-the-top-5-sorting-algorith...

weixin_30099269的博客 161

python五大排序教程_算法基础:五大排序算法Python实战教程

本文为 AI 研习社编译的技术博客,原标题 :A tour of the top 5 sorting algorithms with Python code作者 | George Seif翻译 | 邓普斯•杰弗校对 | shunshun 整理 | 菠萝妹原文链接:https://medium.com/@george.seif94/a-tour-of-the-top-5-sorting-algori...

weixin_32349711的博客 117

python选择排序算法_Python实战教程:五大排序算法

少儿编程现在可以说一句很火爆了,而现在比较火的语言就是Python,为此作为南京小码王Python培训机构的小编,也关注了一些Python实战的教程,现在我们就一起来看下Python实战教程:五大排序算法。1、冒泡排序冒泡排序通常是在CS入门课程中教的,因为它清楚地演示了排序是如何工作的,同时又简单易懂。冒泡排序步骤遍历列表并比较相邻的元素对。如果元素顺序错误,则交换它们。重复遍历列表未排序部分的...

weixin_39793189的博客 104

python五大排序教程,算法基础:五大排序算法Python实战教程

A tour of the top 5 sorting algorithms with Python code作者 | George Seif翻译 | 邓普斯•杰弗校对 | shunshun 整理 | 菠萝妹https://medium.com/@george.seif94/a-tour-of-the-top-5-sorting-algorithms-with-python-code-43ea9a...

weixin_28862113的博客 200

python两个列表合并_算法基础:五大排序算法Python实战教程

本文为 AI 研习社编译的技术博客,原标题 :A tour of the top 5 sorting algorithms with Python code作者 | George Seif翻译 | 邓普斯•杰弗校对 | shunshun 整理 | 菠萝妹原文链接:https://medium.com/@george.seif94/a-tour-of-the-top-5-sorting-algori...

weixin_39636608的博客 176

python五大排序_五大排序算法(Python)

释放双眼,带上耳机,听听看~!所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法,就是如何使得记录按照要求排列的方法。冒泡排序基本思想两个数比较大小,较大的数下沉,较小的数冒起来。算法描述比较相邻的元素。如果第一个比第二个大,就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;针对所有的元素重复...

weixin_39627361的博客 279

五大排序算法(Python)

冒泡排序 冒泡排序通常是在CS入门课程中教的,因为它清楚地演示了排序是如何工作的,同时又简单易懂。冒泡排序步骤遍历列表并比较相邻的元素对。如果元素顺序错误,则交换它们。重复遍历列表未排序部分的元素,直到完成列表排序。因为冒泡排序重复地通过列表的未排序部分,所以它具有最坏的情况复杂度O(n^2)。 选择排序 选择排序也很简单,但常常优于冒泡排序。如果您在这两者之间进行选择,最好默认选...

weixin_30908941的博客 104
上一篇: 各个字符编码之间的关系
下一篇: 自定义K-领进算法的实现
pyswt
博客等级 码龄8年 45粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值