Python | 11大排序学习总结
2025.7.12-7.13简介此文章是本人对11大排序的学习和理解方便自己以后回想记忆。好了正片开始11.选择排序特点一个对小白友好的排序理解从未排序序列中选择出最小元素排在第一位。此后依此循环直到序列呈升序排列算法结束。eg序列 8 5 6 4 3 7 102①最小元素为2把它排在第一位28 5 6 437 10②2不动剩下序列中第二小元素为3把它排在第二位238 5 647 10③2 3不动再排第三小元素4把它放在第三位2 348 5 6 7 10用Python实现此排序我这个打印出来是递减排序。若升序则将 改为即可。代码解释Q1时间复杂度 O(n^2Q2空间复杂度 O(n^2)Q3: 改善时间复杂度用线段树优化选择最值过程10.冒泡排序特点气泡数值小逐渐浮出水面理解比较相邻的元素数值大的元素不断到达序列末尾。eg85 6 4 3 7 10 2①8 VS 585 则8向后移动1位 (586 4 3 7 10 2)②8 VS 686 (5 684 3 7 10 2)③8 VS 484 (5 6 483 710 2④⑤同理⑥8VS10: 810 则10向末尾移动 (5 6 4 3 782 10代码展示代码解释Q1时间复杂度 O(n^2)Q2空间复杂度 O(1)Q3如果是递增顺序就没有必要排了9.插入排序形象记忆整理扑克牌理解前一个元素和它后面相邻元素进行比较数值小的那个插入到它在此序列中真正合适的位置eg8 5 6 4 3 7 10 2①855 864 3 7 10 2②86 and 65 (56843 7 10 2)③865445 6 83 7 10 2代码展示代码解释Q1时间复杂度 O(n^2)Q2空间复杂度 O(1)8.归并排序特点用到了递归和合并理解先分后合分治思想eg8 5 6 4 3 7 10 2①分组: ( 8 5 | 6 4 | 3 7 | 10 2 )②组内排序( 5 8 | 4 6 | 3 7 | 2 10)③两两一组合并(4 5 6 8 | 2 3 7 10)④最后合并两个数组即可代码展示此处打印出来的是递减序列。 若升序把if a[l] a[r] 改为即可代码解释Q1时间复杂度 O(nlogn)Q2: 空间复杂度 O(n)Q3: 没必要的就不枚举7.桶排序理解数字们快到到桶里来桶里装的数字必须是第二桶所有数都比第一桶大后面步骤进行选择排序eg7 11 5 9 8 6 3 12 1 10 4 2①生成三个桶②放入数字(3 1 4 27 5 8 611 9 12 10代码展示代码解释6.计数排序理解类似于累计eg2 3 1 3 2 1 4 2 4 6 2①生成区间范围为19的计数器数组②数字一一放入计数器数组中图片来自b站UP主英雄哪里出来代码展示代码解释时间复杂度 O(nk)空间复杂度O(k)5.基数排序理解建立几个桶按照个 十 百 千 位依次排序每次都要取出来放回原数组中 本质也是个桶排序代码展示代码解释有负数的情况设置偏移量把所有数先减去最小的负数排序完再加上最小数时间复杂度 O(d*(nk))空间复杂度 O(nk)4.快速排序理解选择一个基准数不动让它和其他数比较大于它的数放一起 小于它的数放一起 基准数和左临界数左边的数字交换位置最后用递归排序完成eg8 5 12 9 4 10 11 3 6 7 2 1以8为基准(8 5 9 4 3 6 7 2 1 12 9 10 11)把8和1交换(1 5 9 4 3 6 7 2 8 12 9 10 11)依此循环代码展示代码解释时间复杂度O(nlogn)空间复杂度O(logn)当数列升序排列时 有局限性3.随机快速排序理解基准数随机了其他没变代码展示解释时间复杂度O(nlogn)空间复杂度O(logn)2.希尔排序插入排序进阶版eg8 5 6 4 3 7 10 2增量为四 分为四组 8 35 76 104 2)同组内部插入排序 3 85 76 102 4)增量为二 分为两组3 6 8 105 2 7 4第一组不动 第二组再进行插入排序增量为一 所有元素归一3 6 8 10 2 4 5 7 最后再进行插入排序代码展示解释时间复杂度O(n^2)空间复杂度O(11.堆排序运用完全二叉树大/小顶堆最大/小的数在最顶端结点编号idx左子数根编号idx * 2右子数根编号idx * 2 1下沉数字小的往下走eg手绘有点丑一点哈哈全部排完即形成大顶堆后要保证升序排列就把最大数与序号最大所在的数进行交换eg代码展示解释时间复杂度O(nlogn)空间复杂度O(1)反思在此学习中仍需改进地方①不会从例题的升序排列到自己操作降序排列 ②如果有负数存在像基数排列却无从下手 ③有些基础知识例如时间复杂度空间复杂度 完全二叉树尚未掌握解决方案还需要多举一反三 多尝试 学会模仿后需自行动手操作。后续会发出一篇关于时间复杂度空间复杂度 完全二叉树相关知识补充结语感谢自己最后坚持下来学完十一大排序和写完这篇文章再接再厉希望每天能敲敲代码目前熟练度也有所上升写博客其实和我初中写的那种图文文章还不太一样博客更注重事实和证明偏理那种吧学编程和写博客让我感悟到了自学要先学会模仿嗯。本次学习资料来源bilibili的UP主英雄哪里出来我看弹幕里说up主好像也有CSDN的账号不知道是不是真的非常感谢“佛祖老师”的Python课 无论是视频效果还是编程技术都很牛波一

相关新闻

如何利用Video2X实现专业级AI视频超分辨率与帧插值:完整指南

如何利用Video2X实现专业级AI视频超分辨率与帧插值:完整指南

如何利用Video2X实现专业级AI视频超分辨率与帧插值:完整指南 【免费下载链接】video2x A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_Trending/vi…

2026/8/1 21:12:41 阅读更多 →
【单片机毕设案例分享】基于单片机的多参数室内环境自动调控硬件设计 基于 STC89C52 的室内环境声光预警控制系统实现(017801)

【单片机毕设案例分享】基于单片机的多参数室内环境自动调控硬件设计 基于 STC89C52 的室内环境声光预警控制系统实现(017801)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于单片机,STM32单片机,51单片机,J…

2026/8/1 21:11:41 阅读更多 →
GPT2-Chinese中文语言模型实战指南:从零开始构建专业级文本生成系统

GPT2-Chinese中文语言模型实战指南:从零开始构建专业级文本生成系统

GPT2-Chinese中文语言模型实战指南:从零开始构建专业级文本生成系统 【免费下载链接】GPT2-Chinese Chinese version of GPT2 training code, using BERT tokenizer. 项目地址: https://gitcode.com/gh_mirrors/gp/GPT2-Chinese GPT2-Chinese是一个基于PyTor…

2026/8/1 21:11:41 阅读更多 →

最新新闻

终极指南:如何让PL-2303旧芯片在Windows 10上完美运行

终极指南:如何让PL-2303旧芯片在Windows 10上完美运行

终极指南:如何让PL-2303旧芯片在Windows 10上完美运行 【免费下载链接】pl2303-win10 Windows 10 driver for end-of-life PL-2303 chipsets. 项目地址: https://gitcode.com/gh_mirrors/pl/pl2303-win10 还在为Windows 10系统无法识别PL-2303芯片而烦恼吗&a…

2026/8/2 0:14:56 阅读更多 →
网盘直链下载助手:免费突破百度网盘限速的终极解决方案

网盘直链下载助手:免费突破百度网盘限速的终极解决方案

网盘直链下载助手:免费突破百度网盘限速的终极解决方案 【免费下载链接】baiduyun 油猴脚本 - 一个免费开源的网盘下载助手 项目地址: https://gitcode.com/gh_mirrors/ba/baiduyun 你是否曾经为百度网盘的下载速度而烦恼?现在,一个完…

2026/8/2 0:14:56 阅读更多 →
摆脱云端限制,OpenClaw 本地私有化自动化方案详解

摆脱云端限制,OpenClaw 本地私有化自动化方案详解

核心亮点:提供全程可视化的图形操作界面,自动补齐全套运行依赖,数据独立存储于本地设备,兼容多款主流大模型,并采用轻量化的 45.7MB 整合压缩包。 教程适配:OpenClaw | 适配 Windows 10/11 与 macOS 双系统…

2026/8/2 0:14:56 阅读更多 →
DownKyi视频下载工具:5个实用技巧让你轻松收藏B站精彩内容

DownKyi视频下载工具:5个实用技巧让你轻松收藏B站精彩内容

DownKyi视频下载工具:5个实用技巧让你轻松收藏B站精彩内容 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等&a…

2026/8/2 0:13:55 阅读更多 →
如何快速掌握3DS游戏存档备份:JKSM完整实战指南

如何快速掌握3DS游戏存档备份:JKSM完整实战指南

如何快速掌握3DS游戏存档备份:JKSM完整实战指南 【免费下载链接】JKSM JKs Save Manager for 3DS 项目地址: https://gitcode.com/gh_mirrors/jk/JKSM 你是否曾因3DS系统故障或设备更换而丢失珍贵的游戏进度?数百小时的游戏心血瞬间消失的痛楚&am…

2026/8/2 0:12:55 阅读更多 →
如何轻松备份微信聊天记录?WeChatMsg完整使用指南

如何轻松备份微信聊天记录?WeChatMsg完整使用指南

如何轻松备份微信聊天记录?WeChatMsg完整使用指南 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeChatMsg…

2026/8/2 0:12:55 阅读更多 →

日新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/2 0:00:38 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/2 0:00:38 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:38 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/2 0:00:38 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/2 0:00:38 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/2 0:00:38 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →