题意:给定一个序列,让你构造出一个序列,满足条件,且最大。条件是 选取一个ai <= max{a[b[j], j]-j} 析:贪心,贪心策略就是先尽量产生大的,所以就是对于B序列尽量从头开始,由于数据比较大,采用桶排序,然后维护一个单调队列,使得最头上最大。 代码如下: ...
分类:
其他好文 时间:
2017-07-27 20:30:17
阅读次数:
177
两两分组,然后取每组的最小值来求和,让和最大。 如何桶排序? ...
分类:
编程语言 时间:
2017-07-15 19:55:33
阅读次数:
275
1 //简化版的桶排序,时间复杂度为O(2*(m+n))->O(m+n) 2 //处理的问题:随机输入几组数,对这几组数进行自动排序操作(从小到大或从大到小排序) 3 #include 4 using namespace std; 5 inline int read() 6 { 7 int x=0,... ...
分类:
编程语言 时间:
2017-07-11 11:17:50
阅读次数:
222
排序算法 -- 目录 桶排序 (Bucket sort)或所谓的箱排序的原理是将数组分到有限数量的桶子里,然后对每个桶子再分别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序),最后将各个桶中的数据有序的合并起来。 排序过程: Data Structure Visualizatio ...
分类:
编程语言 时间:
2017-07-05 20:00:04
阅读次数:
164
其实这是昨天的事了。(现在时间回到一天前) 今天的主要内容是强连通分量的割点与桥 一下给出割点和桥的写法 我还刷了一道水题 本题涉及到桶排序 挺简单的 题目:明明的随机数;见codevs1075 本文由Yzyet编写,网址为www.cnblogs.com/Yzyet。非Yzyet同意,禁止转载,侵权 ...
分类:
其他好文 时间:
2017-07-03 22:29:58
阅读次数:
214
补充说明三点 1,桶排序是稳定的 2,桶排序是常见排序里最快的一种,比快排还要快…大多数情况下 3,桶排序非常快,但是同时也非常耗空间,基本上是最耗空间的一种排序算法 无序数组有个要求,就是成员隶属于固定(有限的)的区间,如范围为[0-9](考试分数为1-100等) 例如待排数字[6 2 4 1 5 ...
分类:
编程语言 时间:
2017-06-27 13:00:08
阅读次数:
251
//木桶排序/* 首先产生两个数字,最大值和最小值,然后根据两个数字的值决定要创建多少个桶装数据, 每个 桶装数据按key编好号码,按数组内的数字指定桶的出现次数。 然后输出所有指定桶。木桶算法是不稳定算法。*/$count = array(6,10,4,12,4,90,33); function ...
分类:
编程语言 时间:
2017-06-25 22:11:23
阅读次数:
138
通排序非常浪费空间, 比如需要排序的范围在0~2000之间, 需要排序的数是[3,9,4,2000], 同样需要2001个空间 注意: 通排序不能排序小数 ...
分类:
编程语言 时间:
2017-06-23 18:25:43
阅读次数:
188
在我们的生活的这个世界到处都是被排序过的东西。站队的时候会按照身高排序,考试的名次需要按照分数排序,网上购物的时候会按照价格排序,电子邮箱中的邮件按照时间排序……可以说排序无处不在。今天简单讲讲最快最简单的排序——桶排序。 尝试一下输入n个0~1000之间的整数,将它们从大到小排序。 代码实现如下: ...
分类:
编程语言 时间:
2017-06-21 13:47:29
阅读次数:
137