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

4-26记录(学习通排序测试)

快速排序

基数排序



1.插入排序

原理

将未排序元素逐个插入已排序部分的正确位置。

每插入一个元素就要和前面的比然后放到合适的位置

  • 时间复杂度

    • 最优(已有序):O(n)

    • 最差(逆序):O(n²)

  • 空间复杂度:O(1)(原地排序)

  • 稳定性:✅ 稳定

适用场景
  • 小规模数据(n < 100)或基本有序序列。

  • 实际应用:作为快速排序或归并排序的子过程优化。


2.希尔排序(隔几个数为一组)

  • 空间复杂度:O(1)

  • 稳定性:❌ 不稳定

设初始数组为 [9, 8, 7, 6, 5, 4],我们以初始增量 gap = len(arr) // 2 = 3 开始进行希尔排序,具体步骤如下:

  1. 初始状态和第一次分组(gap = 3

    • 初始数组:[9, 8, 7, 6, 5, 4]
    • 分为三组:
      • 第一组:[9, 6](间隔为 3)
      • 第二组:[8, 5](间隔为 3)
      • 第三组:[7, 4](间隔为 3)
    • 对每组进行插入排序:
      • 第一组:[6, 9]
      • 第二组:[5, 8]
      • 第三组:[4, 7]
    • 此时数组变为:[6, 5, 4, 9, 8, 7]
  2. 第二次分组(gap = 3 // 2 = 1

    • 此时相当于进行普通的插入排序(因为增量为 1)。
    • 从第二个元素 5 开始,5 比 6 小,交换位置,数组变为 [5, 6, 4, 9, 8, 7]
    • 处理第三个元素 44 比 6 小,继续向前比较,4 比 5 小,交换位置,数组变为 [4, 5, 6, 9, 8, 7]
    • 处理第四个元素 99 比 6 大,位置不变,数组还是 [4, 5, 6, 9, 8, 7]
    • 处理第五个元素 88 比 9 小,交换位置,8 继续向前比较,8 比 6 大,位置不变,数组变为 [4, 5, 6, 8, 9, 7]
    • 处理第六个元素 77 比 9 小,交换位置,7 继续向前比较,7 比 8 小,交换位置,7 比 6 大,位置不变,数组变为 [4, 5, 6, 7, 8, 9]


3.快速排序:

选择枢轴(一般选第一个,两个指针,指向第一个为low,比枢轴小的放在low左边;指向最后一个的为high,比枢轴大的放在high右边,移动指针

  • 时间复杂度

    • 平均:O(n log n)

    • 最差(有序输入):O(n²)

  • 空间复杂度:O(log n)(递归栈)

  • 稳定性:❌ 不稳定

适用场景
  • 大规模随机数据(实际最快)。

4. 简单选择排序

每轮选择未排序部分的最小值,放到已排序部分的末尾,

  • 时间复杂度:O(n²)(始终需完全扫描)

  • 空间复杂度:O(1)

  • 稳定性:❌ 不稳定(交换可能破坏顺序)

适用场景
  • 仅适用于交换次数极少的情况。

相关文章:

  • TDengine 中的压缩设计
  • springboot入门-repository数据访问层JPA和mybatis
  • NtripShare 2025第一季度主要技术进展
  • Python循环结构深度解析与高效应用实践
  • 2.4goweb项目上传到csdn的git仓库
  • SinSR模型剪枝实验报告
  • 蓝桥杯赛场反思:技术与心态的双重修炼
  • 基于大模型对先天性幽门肥厚性狭窄预测及临床方案的研究报告
  • 【Linux】环境监控系统软件框架
  • AQS条件队列源码详细剖析
  • 从零实现 registry.k8s.io/pause:3.8 镜像的导出与导入
  • 002 六自由度舵机机械臂——姿态解算理论
  • 2007-2022年 上市公司-企业税负数据-社科数据
  • C#里使用libxl来创建EXCEL文件然后发送到网络
  • Nuxt3中使用UnoCSS指南
  • 论人际关系发展的阶段
  • 树莓派学习专题<9>:使用V4L2驱动获取摄像头数据--设定分辨率和帧率
  • Go设计模式-观察者模式
  • 【量化交易笔记】17.多因子的线性回归模型策略
  • JAVA---字符串
  • 大家聊中国式现代化|周冯琦:转角见美,让“绿意”触手可及
  • 人民日报:光荣属于每一个挺膺担当的奋斗者
  • 传媒湃︱《金陵晚报》副刊“雨花石”5月起改为免费刊登
  • 钱学森数据服务中心在沪上线,十万个数字资源向公众开放
  • 网络达人“拿”别人的视频为自己带货赚佣金,法院判决赔偿1.4万元
  • 获公示拟任省辖市委副书记的胡军,已赴南阳履新