計(jì)數(shù)排序是一個(gè)非基于比較的線性時(shí)間排序算法。它對輸入的數(shù)據(jù)有附加的限制條件: 1、輸入的線性表的元素屬于有限偏序集S; 2、設(shè)輸入的線性表的長度為n,|S|=k(表示集合S中元素的總數(shù)目為k),則k=O(n)。 在這兩個(gè)條件下,計(jì)數(shù)排序的復(fù)雜性為O(n)。 計(jì)數(shù)排序算法的基本思想是對于給定的輸入序列中的每一個(gè)元素x,確定該序列中值小于x的元素的個(gè)數(shù)。一旦有了這個(gè)信息,就可以將x直接存放到最終的輸出序列的正確位置上。例如,如果輸入序列中只有17個(gè)元素的值小于x的值,則x可以直接存放在輸出序列的第18個(gè)位置上。 計(jì)數(shù)排序算法沒有用到元素間的比較,它利用元素的實(shí)際值來確定它們在輸出數(shù)組中的位置。因此,計(jì)數(shù)排序算法不是一個(gè)基于比較的排序算法,從而它的計(jì)算時(shí)間下界不再是Ω(nlogn)。另一方面,計(jì)數(shù)排序算法之所以能取得線性計(jì)算時(shí)間的上界是因?yàn)閷υ氐娜≈捣秶髁艘欢ㄏ拗疲磌=O(n)。如果k=n2,n3,..,就得不到線性時(shí)間的上界。
標(biāo)簽: 線性 輸入 排序 元素
上傳時(shí)間: 2015-10-30
上傳用戶:chenxichenyue
JAVA 深度優(yōu)先搜索實(shí)例 JAVA Depath First Search
標(biāo)簽: JAVA Depath Search First
上傳時(shí)間: 2013-12-25
上傳用戶:kytqcool
中文自然語言處理 -- N-Gram及其平滑技術(shù)
標(biāo)簽: N-Gram 自然語言處理
上傳用戶:獨(dú)孤求源
最小二乘遞推算法的Matlab仿真 v(k)是服從N(0,1)分布的不相關(guān)隨機(jī)噪聲
標(biāo)簽: Matlab 遞推算法 仿真 分布
上傳時(shí)間: 2015-11-01
上傳用戶:love1314
UVCView2.x86 專門看USB 描述表(特別時(shí)UVC裝置)
標(biāo)簽: UVCView USB UVC 86
上傳時(shí)間: 2014-01-13
上傳用戶:xauthu
Lwip協(xié)議與設(shè)計(jì)實(shí)現(xiàn)[繁] 修改自 簡體版本 修改常用語 等 以方便繁體網(wǎng)友 [chao chi]
標(biāo)簽: Lwip chao chi 修改
上傳用戶:xuan‘nian
設(shè)有n種不同面值a1, a2,…, an的郵票,規(guī)定每封信最多貼m張郵票。對于給定的m,n,求出最大的郵資連續(xù)區(qū)間。
標(biāo)簽:
上傳時(shí)間: 2014-12-04
上傳用戶:彭玖華
對于給定的整數(shù)$n$,生成$[n]$的所有排。采用Jonhson-Trotter算法。
標(biāo)簽: 整數(shù)
上傳時(shí)間: 2015-11-03
對于給定的$n$, 生成$[n]$的所有排列的算法。采用逆序數(shù)編碼方法。
標(biāo)簽: 算法 編碼
上傳用戶:zhliu007
對于給定的$n$, 生成$[n]$的所有排列的算法。采用字典序編碼。
上傳時(shí)間: 2013-12-30
上傳用戶:czl10052678
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1