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

一、七种排序及其讲解

以下为七种排序的讲解:

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

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

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

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

二、排序的稳定性

1、什么是排序的稳定性

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

稳定:

不稳定:

2、稳定性的意义

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

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

举一个例子:

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

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

会再进行单科成绩的比较

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

三、七种排序的总结


七种排序全部代码链接

相关推荐
Hesionberger26 分钟前
LeetCode406:重建身高队列精髓解析
开发语言·数据结构·python·算法·leetcode
不要葱花1 小时前
接下来我将复现 10 篇强化学习算法:第 3 篇,一杯喜茶,搞定 Search-R1
算法·面试
geovindu1 小时前
CSharp: Recursion Algorithm
开发语言·后端·算法·c#·递归算法
dsyyyyy11011 小时前
用JavaScript实现排序算法
开发语言·javascript·排序算法
z小猫不吃鱼1 小时前
ResRep: Lossless CNN Pruning via Decoupling Remembering and Forgetting
算法·cnn·剪枝
卡提西亚1 小时前
leetcode-239. 滑动窗口最大值
算法·leetcode·职场和发展
ShallWeL2 小时前
【机器学习】(20)—— 类别不平衡
人工智能·算法·机器学习
明志数科2 小时前
具身智能数据标准化:从碎片化接口到统一工作组的技术路径
人工智能·算法·机器学习
旖-旎2 小时前
LeetCode 494:目标和(动态规划/01背包问题)—— 题解
c++·算法·leetcode·动态规划·01背包