内部排序
来源:互联网 发布:安卓平台c语言编译器 编辑:程序博客网 时间:2024/05/17 02:00
各种排序算法比较
排序方法 时间复杂度 空间复杂度稳定性复杂性 平均情况最坏情况最好情况 直接插入排序O(n*n)O(n*n)O(n)O(1)稳定简单希尔排序O(nlog2n)O(nlog2n) O(1)不稳定较复杂起泡排序O(n*n)O(n*n)O(n)O(1)稳定简单快速排序O(nlog2n)O(n*n)O(nlog2n)O(log2n)不稳定较复杂直接选择排序O(n*n)O(n*n)O(n*n)O(1)不稳定简单堆排序O(nlog2n)O(nlog2n)O(nlog2n)O(1)不稳定较复杂归并排序O(nlog2n)O(nlog2n)O(nlog2n)O(n)稳定较复杂基数排序O(d(n+r))O(d(n+r))O(d(n+r))O(n+r)稳定较复杂
(1)从平均时间性能而言,快速排序最好,但快速排序最坏情况下性能不如堆排序和归并排序。后两者,在n较大时,归并排序较好,但它所需辅助空间较多。
(2)当序列中的记录,基本有序时,以直接插入排序为最佳!
(3)一般来说,排序过程中的“比较”是在“相邻的2个记录关键字”之间进行的排序方法,是稳定的。由于大多数情况下,排序是按照记录的主关键字进行的,因此排序方法是否稳定无关紧要。若排序按记录的次关键字进行,则应选择稳定的排序方法。
(4)基数排序适应于n很大,而关键字较小的序列。若,关键字也很大,则亦可先按“最高位关键字”排序,分成若干“小”的序列,而后进行直接插入排序。
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- 内部排序
- sql server 2005 无法安装 manager studio 的问题
- 长门组织(CMO)成立啦!
- #pragma pack(n) 用法
- oracle 集群中全局对象的查询
- C++模板编译模型:包含编译模型
- 内部排序
- xampp下安装phpunit小记
- 淘宝屏蔽百度
- VC++基础 判断键盘消息
- 破解Xcode3.2.3,部署你的应用到真机
- Linux下面 mplayer播放器报错
- 人人都为什么努力着?
- 今天跟你发脾气对不起
- 血色+浪漫