当前位置: 首页 > article >正文

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

一、七种排序及其讲解

在这里插入图片描述
以下为七种排序的讲解:

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

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

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

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

二、排序的稳定性

1、什么是排序的稳定性

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

稳定:

在这里插入图片描述

不稳定:

在这里插入图片描述

2、稳定性的意义

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

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

举一个例子:
在学校录取学生时,往往有很多人总成绩是相同的
那么为了为学校录取需要的人时
会再进行单科成绩的比较
在这里插入图片描述

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

三、七种排序的总结

在这里插入图片描述
七种排序全部代码链接


http://www.kler.cn/a/401116.html

相关文章:

  • 【动手学深度学习Pytorch】6. LeNet实现代码
  • Vue3 pinia使用
  • Siglus引擎 Unpack | 未完待续
  • 【git】git取消提交的内容,恢复到暂存区
  • 人工智能的未来展望与挑战
  • SDF,一个从1978年运行至今的公共Unix Shell
  • 阿里云ElasticSearch跨集群备份恢复实践
  • Cloud Native 云原生后端的开发注意事项
  • Vue3.5正式上线,父传子props用法更丝滑简洁
  • Redis 性能优化 18招
  • 每日学习记录003:(C++)unique_ptr和shared_ptr
  • ftrack 24.10全面升级:Autodesk Flame集成与多项新功能性能改进将发布
  • spring boot启动停止重启脚本
  • 视觉SLAM--经典视觉SLAM框架
  • MySQL数据库-SQLyoung的使用
  • 【金融风控项目-07】:业务规则挖掘案例
  • 播放器开发之ffmpeg 硬件解码方案
  • 【一文了解】C#基础-数组
  • leetcode 面试150 之随机链表的复制
  • Oracle 19c修改pga报ORA-00093、ORA-01078错进行分析处理
  • 美国人工智能国家安全备忘录核心解读(上)
  • DimensionX:单图生成任意的3d/4d视图
  • 3. 用Ruby on Rails创建一个在线商城
  • Ruby编程语言全景解析:从基础到进阶
  • linux中如何退出python
  • excel打开csv文件乱码的问题