一亿数据获取前100/1000个最大值
3秒搞定!~~ 一亿数据获取前100/1000个最大值整合网络上的算法。 根据我的思路。计算一亿个数字中最大的前100个值。
昨晚效率还是很低。 今天搞的算法。 只需要3秒钟。 获取前100个 前1000个 速度都非常快。
算法原理:
把一亿个数字的前100个 首先放入数组。 然后把最小值放在ary。
然后再,循环100到一亿 之间的。 每次循环判断当前数字是否大于ary
当大于时,当前数字放入ary 并再次重构数组最小值进入ary以此类推 。
当循环完这一亿个数字后。 最大的前100个数字就出来了。
岂不是要循环一亿次? 和 堆排序 比起来效率如何?
看了你的原理就是堆排序呀
页:
[1]