排序简介 |
您所在的位置:网站首页 › 排列和排序的概念 › 排序简介 |
排序简介 本页面将简要介绍排序算法。 定义排序算法(英语:Sorting algorithm)是一种将一组特定的数据按某种顺序进行排列的算法。排序算法多种多样,性质也大多不同。 性质稳定性稳定性是指相等的元素经过排序之后相对顺序是否发生了改变。 拥有稳定性这一特性的算法会让原本有相等键值的纪录维持相对次序,即如果一个排序算法是稳定的,当有两个相等键值的纪录 和 ,且在原本的列表中 出现在 之前,在排序过的列表中 也将会是在 之前。 基数排序、计数排序、插入排序、冒泡排序、归并排序是稳定排序。 选择排序、堆排序、快速排序、希尔排序不是稳定排序。 时间复杂度主页面:复杂度 时间复杂度用来衡量一个算法的运行时间和输入规模的关系,通常用 表示。 简单计算复杂度的方法一般是统计「简单操作」的执行次数,有时候也可以直接数循环的层数来近似估计。 时间复杂度分为最优时间复杂度、平均时间复杂度和最坏时间复杂度。OI 竞赛中要考虑的一般是最坏时间复杂度,因为它代表的是算法运行水平的下界,在评测中不会出现更差的结果了。 基于比较的排序算法的时间复杂度下限是 的。 当然也有不是 的。例如,计数排序 的时间复杂度是 ,其中 代表输入数据的值域大小。 以下是几种排序算法的比较。 空间复杂度与时间复杂度类似,空间复杂度用来描述算法空间消耗的规模。一般来说,空间复杂度越小,算法越好。 外部链接排序算法 - 维基百科,自由的百科全书本页面最近更新:2023/2/18 07:57:07,更新历史发现错误?想一起完善? 在 GitHub 上编辑此页!本页面贡献者:NachtgeistW, Alisahhh, Backl1ght, ChungZH, Enter-tainer, Great-designer, iamtwz, Junyan721113, ouuan, partychicken本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |