码迷,mamicode.com
首页 >  
搜索关键字:线性时间排序 计数排序 基数排序 桶排序    ( 1173个结果
HBase协处理器及实例
为什么引入协处理器? HBase作为列数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执行求和、计数、排序等操作。 比如,在旧版本( 虽然HBase在数据存储层中集成了MapReduce,能够有效用于数据表的分布式计算。然而在很多情况下,做一些简单的相加或者聚合计算的时候,如果直接将计算过程放置在server端,能够减少通讯开销,从而获得很好的性能提升。于是, HBase在0....
分类:其他好文   时间:2015-07-03 20:44:49    阅读次数:219
算法练习:两指针之三色排序
问题描述 输入一个整型数组,每个元素在0~2之间,其中0,1,2分别代表红、白、蓝。现要求对数组进行排序,相同颜色的在一起,而且按红白蓝顺序先后排列。要求时间复杂度为O(n)。   问题分析 最容易想到的是排序,比如快排,归并,堆排等,但它们的时间复杂度为O(nlogn),与题意不符。 第二种想到的是计数排序,扫描一遍过去,分别记录0,1,2的个数,然后再对数组进行赋值。时间复杂度为O(...
分类:编程语言   时间:2015-07-03 14:04:40    阅读次数:225
桶排序
桶排序①简介    桶排序假设输入数据服从均匀分布,平均情况下它的时间代价为O(n)。桶排序假设输入是由一个随机过程产生,该过程将元素均匀,独立的分布在[0,1)区间上。②原理    桶排序将[0,1)区间划分为n个相同大小的子区间,或称为桶。然后将n个输入的数据分别放到各个桶中。因为输入数据是均匀分布的,一般不会出现很多数落在一个桶中的情况。为了得到输出结果,先对每个桶中的数据进行排序,再遍历每个...
分类:编程语言   时间:2015-07-01 10:07:44    阅读次数:142
各种排序算法之比较
1.时间复杂度  时间复杂度为O(n^2)的排序算法:插入排序、冒泡排序、选择排序  时间复杂度为O(nlogn)的排序算法:堆排序、归并排序、快速排序  希尔排序介于这两者之间 2.算法稳定性  稳定的排序算法:插入排序、冒泡排序、归并排序和基数排序  不稳定的排序算法:选择排序、快速排序、希尔排序、堆排序...
分类:编程语言   时间:2015-06-30 00:13:26    阅读次数:149
基数排序
基数排序①简介    基数排序是一种用在卡片排序机上的算法,一张卡片有80列,在每一列上机器可以选择在12个位置中的任意一处穿孔。通过机器的操作,能够“编程”来检查每个卡片中的给定列,然后根据穿孔的位置将他们分别放在12个容器中。操作员就可以挨个容器来收集卡片,其中第一个位置穿孔的卡片在最上面,以此类推。②原理    直观上来看,可能会认为应该先按照最高有效位进行排序并分装到不同的容器中,再对每个容...
分类:编程语言   时间:2015-06-29 17:50:24    阅读次数:146
基数排序
介绍: (radix sort)则是属于“分配式排序”(distribution sort),基数排序法又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O....
分类:编程语言   时间:2015-06-28 23:00:12    阅读次数:282
链表应用之基数排序
算法描述:首先从最低位即个位开始排序03132233332401234这是第一趟排序后的桶,个人认为,第一趟,如有322和422,那么就得人为的把422放在322上面,因为在做后趟时,我发现得从下往上的去填桶4223222第二趟,第一行,从左往右,按次最低位,即十位来填桶32433303223101...
分类:编程语言   时间:2015-06-28 18:48:32    阅读次数:118
计数排序
计数排序原理    计数排序的基本思想是:对于每一个输入元素x,确定小于x的元素个数。根据这些信息,就能准确的将每个数字放在正确的位置上。    在排序的过程中,除了输入数组A[n]之外,还需要一个记录结果的数组B[n]和一个记录小于x数的个数数组C[num_max]。A与B的数组等长,而C数组的长度则为n个数中的最大者。    上图为计数排序的一系列过程,下面依次做分析: (a)中显示了原始数组A...
分类:编程语言   时间:2015-06-27 11:42:38    阅读次数:123
【排序】基数排序(计数排序、桶排序)
在此对于桶排序做出两种方法: 一.简化版桶排序 代码如下: /*简化版的桶排序*/ #include int main() { int book[1001],i,j,t,n; for(i=0;i<=1000;i++) { book[i]=0; } scanf("%d",&n);//输入一个数n,表示接下来有n个数 for(i=1;i<=n;i++)//循环读入n个数,并进...
分类:编程语言   时间:2015-06-26 09:16:59    阅读次数:130
序列(两)密钥索引、桶排序、位图、失败者树(照片详细解释--失败者树)
序列(两)以上排序算法都有一个性质:在排序的终于结果中,各元素的次序依赖于它们之间的比較。我们把这类排序算法称为比較排序。不论什么比較排序的时间复杂度的下界是nlgn。下面排序算法是用运算而不是比較来确定排序顺序的。因此下界nlgn对它们是不适用的。键索引计数法(计数排序)计数排序如果n个输入元素中...
分类:编程语言   时间:2015-06-25 15:19:25    阅读次数:252
1173条   上一页 1 ... 86 87 88 89 90 ... 118 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!