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

一、七种排序及其讲解

以下为七种排序的讲解:

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

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

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

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

二、排序的稳定性

1、什么是排序的稳定性

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

稳定:

不稳定:

2、稳定性的意义

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

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

举一个例子:

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

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

会再进行单科成绩的比较

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

三、七种排序的总结


七种排序全部代码链接

相关推荐
Keven_115 分钟前
算法札记:二分
算法·二分
TCW112111 分钟前
AI底层系列:用C++实现线性代数的公式推导与算法设计-6.线性方程组的解集
c++·人工智能·算法
luoyayun36113 分钟前
从零实现 EBU R128 LUFS 响度分析:K-weighting 滤波、双门限算法
算法·lufs响度分析
小糯米60117 分钟前
JS 数组
数据结构·算法·排序算法
拳里剑气28 分钟前
C++算法:链表
c++·算法·链表
凌波粒34 分钟前
LeetCode--90.子集II(回溯算法)
数据结构·算法·leetcode
旖-旎40 分钟前
《LeetCode 417 太平洋大西洋水流问题 FloodFill DFS 解法》
c++·算法·深度优先·力扣·floodfill
凌波粒42 分钟前
LeetCode--46.全排列(回溯算法)
数据结构·算法·leetcode
海砥装备HardAus44 分钟前
大载重工业无人机动力容错控制:单电机失效下的应急重构算法设计
算法·重构·嵌入式·无人机
2zcode1 小时前
项目文档:基于MATLAB语音信号变声算法设计与实现
算法·matlab·语音识别