
1 sumhat 2015 年 7 月 9 日 先排个序再找 50 - 100 的就好了 |
2 loveuqian 2015 年 7 月 9 日 via iPhone 初学者只能想到先遍历找出再排序了 |
3 batman2010 2015 年 7 月 9 日 最大堆。 |
4 txx 2015 年 7 月 9 日 2000 直接做基数排序吧.... |
5 chlx 2015 年 7 月 9 日 如果不重复的话bit记录50-100. 最后按顺序输出. O(N). |
6 publicID001 2015 年 7 月 9 日 via Android 统计50-100 之间的所有数出现次数,输出 另外这种数据规模就算暴力也没什么压力啊 |
7 Kilerd 2015 年 7 月 9 日 先sort,再用二分法找50和100,就可以了吧 |
8 otakustay 2015 年 7 月 9 日 才200个数,显然开200个空位直接哈希排序了,冲撞就用开链表解决 |
9 akira 2015 年 7 月 9 日 这个数据量,随便什么方法都可以了呀。 先排序在过滤或者先过滤再排序都毫无压力的。 而且排序直接冒泡都没问题呀 |
10 also24 2015 年 7 月 9 日 我可以推荐一下Bogo排序嘛? |
11 scream7 PRO 计数排序. |
12 18000rpm 2015 年 7 月 9 日 via Android 想到快排,并且在每次分区的过程中遇到 50~100 之外的直接丢掉。 |
14 acros 2015 年 7 月 9 日 空间换时间吗?遍历一遍。 声明一个200长度的数组numArray[200],memset一下。 遍历一遍numArray[i]++,就得到所有数的排序表了 |
15 acros 2015 年 7 月 9 日 上面数字说错了。等下我改改。 |
16 acros 2015 年 7 月 9 日 numArray[2000]; 原数组遍历src[i], numArray[src[i]]++ 然后查看下numArray从50到100项非零的。 |
17 hahastudio 2015 年 7 月 9 日 桶排啊,反正就 51 个位置 |
18 cloud107202 2015 年 7 月 9 日 桶排+1 |
19 IwfWcf 2015 年 7 月 9 日 才 200 长度,怎么搞都可以啦…… |
20 liuhaotian 2015 年 7 月 9 日 via iPhone 数组[50,100] x[M]++ |
21 msg7086 2015 年 7 月 9 日 最容易实现的方法就是堆排序了吧。开个priority queue什么的然后一边判断一边插♂,跑完就能拿到结果了。 |
22 lzdhlsc 2015 年 7 月 10 日 桶排 O(n) |
23 initdrv 2015 年 7 月 10 日 via iPhone 身为一名默默无闻的JAVA新手,表示只能想到用Arrays的sort排序后,再用二分查找?分别得到不小于50和不大于100的角标?最后循环输出? |
24 poke707 2015 年 7 月 10 日 LZ其实使用了twitter sort的一个变种 https://github.com/ExPHAT/twitter-sort |
25 marginleft OP @poke707 为什么这么说呢? |