排序简介

排序简介

排序简介本页面将简要介绍排序算法.

定义排序算法(Sorting algorithm)是一种将一组特定的数据按某种顺序进行排列的算法.排序算法多种多样,性质也大多不同.

性质稳定性稳定性是指相等的元素经过排序之后相对顺序是否发生了改变.

拥有稳定性这一特性的算法会让原本有相等键值的记录维持相对次序,即如果一个排序算法是稳定的,当有两个相等键值的记录 𝑅R 和 𝑆S,且在原本的列表中 𝑅R 出现在 𝑆S 之前,在排序过的列表中 𝑅R 也将会是在 𝑆S 之前.

基数排序、计数排序、插入排序、冒泡排序、归并排序是稳定排序.

选择排序、堆排序、快速排序、希尔排序不是稳定排序.

时间复杂度主页面:复杂度

时间复杂度用来衡量一个算法的运行时间和输入规模的关系,通常用 𝑂O 表示.

简单计算复杂度的方法一般是统计「简单操作」的执行次数,有时候也可以直接数循环的层数来近似估计.

时间复杂度分为最优时间复杂度、平均时间复杂度和最坏时间复杂度.OI 竞赛中要考虑的一般是最坏时间复杂度,因为它代表的是算法运行水平的下界,在评测中不会出现更差的结果了.

对任意 𝑛n 个互异元素进行排序的比较算法,最坏情况下需要 Ω(𝑛log⁡𝑛)Ω(nlog⁡n) 次比较.

当然也有不是 𝑂(𝑛log⁡𝑛)O(nlog⁡n) 的.例如,计数排序 的时间复杂度是 𝑂(𝑛 +𝑤)O(n+w),其中 𝑤w 代表输入数据的值域大小.

以下是几种排序算法的比较.

空间复杂度与时间复杂度类似,空间复杂度用来描述算法空间消耗的规模.一般来说,空间复杂度越小,算法越好.

外部链接排序算法 - 维基百科,自由的百科全书本页面最近更新:2026/9/28 01:09:54,更新历史发现错误?想一起完善? 在 GitHub 上编辑此页!本页面贡献者:NachtgeistW, Tiphereth-A, Alisahhh, Backl1ght, c-forrest, Enter-tainer, Great-designer, iamtwz, Junyan721113, ouuan, partychicken, zirnc本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用

相关推荐

如何让两部手机通过热点共享网络?简单步骤教你轻松搞定!
《西游记》世界里的神佛体系
365bet在线体育

《西游记》世界里的神佛体系

📅 11-28 👁️ 8334
声优祭(声优祭在哪里看)
365bet在线体育

声优祭(声优祭在哪里看)

📅 07-13 👁️ 948
【财经分析】大矿山停产加剧铜供应紧张担忧 铜市易涨难跌格局得到强化
2024年迪拜留学行前攻略及学生签证工作指南来啦!
365永久激活怎么做到的

2024年迪拜留学行前攻略及学生签证工作指南来啦!

📅 07-25 👁️ 9756
票房最高的十大金庸电影:笑傲江湖仅排第五,周星驰独占冠亚军