计数排序是一个非基于比较的线性时间排序算法。它对输入的数据有附加的限制条件: 1、输入的线性表的元素属于有限偏序集S; 2、设输入的线性表的长度为n,|S|=k(表示集合S中元素的总数目为k),则k=O(n)。 在这两个条件下,计数排序的复杂性为O(n)。 计数排序算法的基本思想是对于给定的输入序列中的每一个元素x,确定该序列中值小于x的元素的个数。一旦有了这个信息,就可以将x直接存放到最终的输出序列的正确位置上。例如,如果输入序列中只有17个元素的值小于x的值,则x可以直接存放在输出序列的第18个位置上。 计数排序算法没有用到元素间的比较,它利用元素的实际值来确定它们在输出数组中的位置。因此,计数排序算法不是一个基于比较的排序算法,从而它的计算时间下界不再是Ω(nlogn)。另一方面,计数排序算法之所以能取得线性计算时间的上界是因为对元素的取值范围作了一定限制,即k=O(n)。如果k=n2,n3,..,就得不到线性时间的上界。
上传时间: 2015-10-30
上传用户:chenxichenyue
使飞机进离港航班的时间在一时间段内达到最小.
标签: 飞机
上传时间: 2015-10-30
上传用户:lepoke
对于持续时间为500s的两个LFM信号,其初始频率分别为0.1Hz、0.3Hz,中止频率分别为0.3Hz、0.1Hz,在不含噪声和含有噪声( )的情况下,仿真
上传时间: 2015-10-31
上传用户:shinesyh
基于51定时器时间片轮循调度函数软件
上传时间: 2013-12-18
上传用户:13517191407
H264编码器,比较3步搜索法和全搜索等的信燥比,平均搜索点数,搜索时间等
上传时间: 2014-01-21
上传用户:xjz632
用C#自己封的一个时间类库,大家可以参考参考。
标签:
上传时间: 2015-11-02
上传用户:hongmo
根据起降城市,查询到起降时间,以及航次的具体信息.
上传时间: 2015-11-02
上传用户:Yukiseop
一个操作系统的模拟多进程代码,可以任意输入进程名字,进程优先级别和进程的运行时间,然后程序会自动输出运行情况,直到结束
上传时间: 2013-12-17
上传用户:LouieWu
C语言课程设计万年历 与PC机系统时间相同,随系统时间改变而改变
上传时间: 2015-11-04
上传用户:miaochun888
使用MATLAB函数中的FFT命令计算离散时间信号的频谱,以加深对离散信号的DFT的理解及其FFT算法的运用。
上传时间: 2015-11-04
上传用户:许小华