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

一、七种排序及其讲解

以下为七种排序的讲解:

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

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

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

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

二、排序的稳定性

1、什么是排序的稳定性

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

稳定:

不稳定:

2、稳定性的意义

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

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

举一个例子:

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

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

会再进行单科成绩的比较

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

三、七种排序的总结


七种排序全部代码链接

相关推荐
Ivanqhz1 分钟前
向量化计算
开发语言·c++·后端·算法·支持向量机·rust
ffqws_3 分钟前
进阶搜索:迭代加深搜索(IDS)埃及分数题解
算法·迭代加深
格林威3 分钟前
相机的“对焦”和“变焦”,这二者有什么区别?
开发语言·人工智能·数码相机·opencv·算法·计算机视觉·视觉检测
LXS_3573 分钟前
常用算法(下)---拷贝、替换、算术生成、集合算法
开发语言·c++·算法·学习方法
历程里程碑4 分钟前
Linux19 实现shell基本功能
linux·运维·服务器·算法·elasticsearch·搜索引擎·哈希算法
鲨辣椒100866 分钟前
算法也能降低时间复杂度???—————算法延伸
数据结构·算法·排序算法
你怎么知道我是队长8 分钟前
C语言---排序算法5---迭代归并排序法
c语言·算法·排序算法
拼好饭和她皆失10 分钟前
数学知识:质数相关讲解——质数判定,分解质因数及筛质数
算法·质数·数学知识
想进个大厂13 分钟前
代码随想录day35 36
算法·leetcode·职场和发展
xqqxqxxq14 分钟前
洛谷算法1-2 排序(NOIP经典真题解析)java(持续更新)
java·开发语言·算法