计数排序是一个非基于比较的线性时间排序算法。它对输入的数据有附加的限制条件: 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
蚁群算法的进行线性系统的辨识,一个例题。
标签: 蚁群算法 线性系统 辨识
上传时间: 2014-08-19
上传用户:weiwolkt
线性方程组的解的讲义!希望对大家有用啦!与大家一起分享
标签: 家 线性 方程 分
上传时间: 2015-11-02
上传用户:hakim
Delphi Pascal 数据挖掘领域算法包 稀疏线性系统分析包
标签: Delphi Pascal 数据挖掘 算法
上传时间: 2013-11-29
上传用户:气温达上千万的
线性与开关电源设计第二部 线性与开关电源设计第二部
标签: 线性 开关电源设计
上传时间: 2015-11-05
上传用户:shanml
线性方程组数值解法 包括高斯赛德尔迭代法 矩阵直接三角分解法 列主元高斯消去法 雅可比迭代法
标签: 高斯 迭代法 线性 方程
上传时间: 2013-12-23
上传用户:lvzhr
解线性方程组(多元一次) 水平有限,DOS界面。 其中,输出方程组的未知数用x1,x2,x3...表示, 可以解出多元一次方程。
标签: 解线性 方程 多元 水平
上传时间: 2013-11-28
上传用户:wangyi39
数据结构线性链表课程设计,附有详细课程设计报告。已调试,可以下载。
标签: 数据结构 线性
上传时间: 2013-12-17
上传用户:D&L37
matlab编程的三个线性方程组求解子程序:cggm.m,fdm.m,febs.m.其中cggm.m为共轭梯度法求解子程序,fdm.m为最速下降法求解自程序,febs.m为三对角追赶法求解子程序.
标签: cggm febs fdm matlab
上传时间: 2013-12-25
上传用户:thesk123
五对角占优线性方程组求解的MATLAB 程序MYLU。 输入参数A为系数矩阵,F为右端向量。输出参数L,U为A的LU 分解A=LU,X为解向量。
标签: MATLAB MYLU 对角 参数
上传时间: 2013-12-04
上传用户:c12228