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

一、七种排序及其讲解

以下为七种排序的讲解:

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

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

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

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

二、排序的稳定性

1、什么是排序的稳定性

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

稳定:

不稳定:

2、稳定性的意义

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

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

举一个例子:

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

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

会再进行单科成绩的比较

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

三、七种排序的总结


七种排序全部代码链接

相关推荐
dialect_7 小时前
KMP算法
开发语言·c++·算法
reikocao7 小时前
卡尔曼滤波的动态机制:P如何改变融合权重
算法
漂流瓶jz8 小时前
UVA-1612 猜名次 题解答案代码 算法竞赛入门经典第二版
数据结构·算法·题解·排序·aoapc·算法竞赛入门经典
吞下星星的少年·-·8 小时前
Div.2 CF 1130B题(构造,贪心)
算法·贪心·构造
是main不是漫9 小时前
【双指针——移动零】数组划分类题目的入门基石
c++·算法
深圳市快瞳科技有限公司11 小时前
野外鸟类AI识别落地实录:输入适配、结构化输出、去重聚合与置信度分流的工程实践
算法·计算机视觉·鸟类识别·鸟类ai识别·野外鸟类观测·林业调查
专注仿真12 小时前
梯度提升类(XFBoost)算法详解与代码实例
开发语言·人工智能·python·算法·大模型训练·控制算法
小豆庄12 小时前
视频遮罩追踪退场后ID撞号的排查—多目标场景下的失效
opencv·算法·bug·视频·python3.11
Tisfy13 小时前
LeetCode 3882.网格图中最小异或路径:动态规划
算法·leetcode·动态规划
D e re k ZH13 小时前
P5025 [SNOI2017] 炸弹
c++·算法