【数据结构】七种常用排序总结

一、七种排序及其讲解

以下为七种排序的讲解:

【数据结构】插入排序------直接插入排序 和 希尔排序

【数据结构】选择排序------选择排序 和 堆排序

【数据结构】交换排序------冒泡排序 和 快速排序

【数据结构】归并排序 ------ 递归及非递归解决归并排序

二、排序的稳定性

1、什么是排序的稳定性

在排序过程中数组中相同数的相对位置不会发生改变的排序是稳定的 ,反之我们说排序是不稳定的

稳定:

不稳定:

2、稳定性的意义

<1>在只进行一次排序的情况下,排序的稳定性都没什么意义

<2>在进行二次或多次排序时稳定性是有意义的

举一个例子:

在学校录取学生时,往往有很多人总成绩是相同的

那么为了为学校录取需要的人时

会再进行单科成绩的比较

当再进行数学成绩比较时,有两个还是分不出来,还要再次进行比较,但是那些原先数学成绩好的同学,不能因为剩下成绩的比较而改变他的相对位置

三、七种排序的总结


七种排序全部代码链接

相关推荐
米尔的可达鸭几秒前
深入操作系统 Socket 底层:EPOLLOUT 可写事件管理 + 非阻塞异步
开发语言·网络·数据结构·经验分享·websocket·网络协议
HZZD_HZZD19 分钟前
碳核查场景下能源计量数据精准采集与碳排放核算算法全链路实战:从智能电表协议适配到排放因子动态计算
算法·能源
饼干哥哥39 分钟前
10.5% 深层转化、90%+ 新用户,ChatGPT Ads 值得吗?
算法·正则表达式·编程语言
Irissgwe1 小时前
算法之二分查找
数据结构·c++·算法·二分查找
亿牛云爬虫专家1 小时前
代理IP质量评估:如何建立一套代理IP的多维度评分与淘汰算法?
tcp/ip·算法·爬虫代理·延迟·免费代理ip·连通率·时效
zzz_23681 小时前
【Java实习面试算法冲刺】动态规划
java·算法·面试
小蒋学算法1 小时前
算法-滑动窗口最大值
数据结构·算法
冷小鱼1 小时前
AI Agent的核心算法:自主学习与反思(Self-Reflection / Critique)
人工智能·学习·算法·自主学习·self-reflection·critique·反思
youtootech10 小时前
HarmonyOS《柚兔学伴》项目实战09-待办列表 UI——List+ForEach+滑动删除
数据结构·ui·华为·list·harmonyos
:-)11 小时前
算法-归并排序
java·开发语言·数据结构·算法·排序算法