尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

【初赛】排序 - Slayer

【初赛】排序 - Slayer
📅 发布时间:2026/6/18 12:50:23
真的初赛不过就退役了,0个奖励名额。

常见排序算法的时间复杂度与空间复杂度总结

1. 冒泡排序(Bubble Sort)

  • 时间复杂度:
    • 最好:O(n)(数组已有序,加入标志位提前退出)
    • 平均:O(n²)
    • 最坏:O(n²)(数组逆序)
  • 空间复杂度:O(1)(原地排序,仅需临时变量)

2. 选择排序(Selection Sort)

  • 时间复杂度:
    • 最好:O(n²)(需遍历所有元素找到最小/大值)
    • 平均:O(n²)
    • 最坏:O(n²)
  • 空间复杂度:O(1)(原地排序,仅需临时变量)

3. 插入排序(Insertion Sort)

  • 时间复杂度:
    • 最好:O(n)(数组已有序,无需移动元素)
    • 平均:O(n²)
    • 最坏:O(n²)(数组逆序,每次插入需移动所有已排序元素)
  • 空间复杂度:O(1)(原地排序,仅需临时变量)

4. 快速排序(Quick Sort)

  • 时间复杂度:
    • 最好:O(n log n)(每次均匀划分数组)
    • 平均:O(n log n)
    • 最坏:O(n²)(数组已序或逆序,每次划分仅减少一个元素)
  • 空间复杂度:
    • 最好/平均:O(log n)(递归栈深度为 log n)
    • 最坏:O(n)(递归栈深度为 n)

5. 归并排序(Merge Sort)

  • 时间复杂度:
    • 最好/平均/最坏:O(n log n)(分治策略,每一层合并需 O(n),共 log n 层)
  • 空间复杂度:O(n)(合并时需额外数组存储临时结果)

6. 堆排序(Heap Sort)

  • 时间复杂度:
    • 最好/平均/最坏:O(n log n)(建堆 O(n),每次调整堆 O(log n),共 n 次)
  • 空间复杂度:O(1)(原地排序,利用原数组构建堆)

7. 计数排序(Counting Sort)

  • 时间复杂度:
    • 最好/平均/最坏:O(n + k)(k 为数值范围,遍历数组 O(n) + 统计范围 O(k))
  • 空间复杂度:O(n + k)(需统计数组和输出数组)

8. 基数排序(Radix Sort)

  • 时间复杂度:
    • 最好/平均/最坏:O(d(n + k))(d 为最大数的位数,k 为基数,如十进制 k=10)
  • 空间复杂度:O(n + k)(需临时数组存储每一位排序结果)

9. 桶排序(Bucket Sort)

  • 时间复杂度:
    • 最好:O(n + k)(数据均匀分布,桶内用线性排序)
    • 平均:O(n + k)
    • 最坏:O(n²)(所有数据集中在一个桶,退化为桶内排序复杂度)
  • 空间复杂度:O(n + k)(需存储桶和临时数组)

复杂度对比表

算法 最好时间 平均时间 最坏时间 空间复杂度 稳定性
冒泡排序 \(\color{blue}{O(n)}\) \(\color{green}{O(n^2)}\) \(\color{green}{O(n^2)}\) O(1) 稳定
插入排序 \(\color{blue}{O(n)}\) \(\color{green}{O(n^2)}\) \(\color{green}{O(n^2)}\) O(1) 稳定
选择排序 \(\color{green}{O(n^2)}\) \(\color{green}{O(n^2)}\) \(\color{green}{O(n^2)}\) O(1) \(\color{red}{不稳定}\)
快速排序 \(\color{red}{O(n \log n)}\) $\color{red}{O(n \log n)} $ \(\color{green}{O(n^2)}\) O(log n) \(\color{red}{不稳定}\)
归并排序 \(\color{red}{O(n \log n)}\) \(\color{red}{O(n \log n)}\) \(\color{red}{O(n \log n)}\) O(n) 稳定
堆排序 \(\color{red}{O(n \log n)}\) \(\color{red}{O(n \log n)}\) \(\color{red}{O(n \log n)}\) O(1) \(\color{red}{不稳定}\)
计数排序 O(n + k) O(n + k) O(n + k) O(n + k) 稳定
桶排序 O(n + k) O(n + k) \(\color{green}{O(n^2)}\) O(n + k) 稳定
基数排序 O(d(n + k)) O(d(n + k)) O(d(n + k)) O(n + k) 稳定

泡插选平方
泡茶选平方
快归堆 nlogn
快归队 nlogn
计桶n+k 基数d(n+k)
计桶n+k 基数再乘D

关键特性总结

  • 稳定排序:冒泡、插入、归并、计数、基数、桶排序(桶内排序稳定时)。
  • 原地排序:冒泡、选择、插入、快速、堆排序(空间复杂度 O(1) 或 O(log n))。
  • 线性时间排序:计数、基数、桶排序(需满足数值范围或分布条件)。

相关新闻

  • LG11755
  • 「LAOI-9」Update
  • ABC393F

最新新闻

  • 2026年上海防水补漏服务完全指南:从老洋房到现代公寓的漏水根治方案 - 精选优质企业推荐官
  • 2026年6月行业内头部硅芯管源头厂家推荐,PVC塑料管/60/50硅芯管/河北格栅管,硅芯管源头厂家口碑推荐 - 品牌推荐师
  • 创意导演技能:科幻风格视频
  • 专网对讲机基础工作原理解析 东北工矿林区通用通信技术科普
  • 深入解析MC68336/376微控制器:CPU32核心与集成外设实战指南
  • M68HC08电机控制SDK深度解析:从硬件抽象到实战避坑

日新闻

  • 2026年不锈钢卷板厂家推荐排行榜:冷轧热轧/304/201不锈钢卷板,高颜值耐腐蚀源头厂家实力精选 - 企业推荐官【官方】
  • FLUX.1-dev FP8模型实战指南:24GB以下显卡高效部署方案
  • 2026佛山长途搬家价目表:跨省跨市搬家费用完整计算指南 - 从来都是英雄出少年

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号