关注JEECG发展历程 关注最新动态和版本, 记录JEECG成长点滴 更新日志 - 技术支持 - 招聘英才

JEECG最新版本下载 JEECG智能开发平台 - 显著提高开发效率 常见问题 - 入门视频 - 参与开源团队

商务QQ: 69893005、418799587 商务热线(5*8小时): 010-64808099 官方邮箱: jeecgos@163.com

查看: 10165|回复: 2

一亿数据获取前100/1000个最大值

[复制链接]
发表于 2014-9-25 08:34:22 | 显示全部楼层 |阅读模式
3秒搞定!~~ 一亿数据获取前100/1000个最大值

整合网络上的算法。 根据我的思路。计算一亿个数字中最大的前100个值。

昨晚效率还是很低。 今天搞的算法。 只需要3秒钟。 获取前100个 前1000个 速度都非常快。


算法原理:

把一亿个数字的前100个 首先放入数组。 然后把最小值放在ary[0]。

然后再,循环100到一亿 之间的。 每次循环判断当前数字是否大于ary[0]

当大于时,当前数字放入ary[0] 并再次重构数组最小值进入ary[0]  以此类推 。

当循环完这一亿个数字后。 最大的前100个数字就出来了。

发表于 2015-1-6 11:33:36 | 显示全部楼层
岂不是要循环一亿次?
发表于 2015-1-13 17:20:45 | 显示全部楼层
和 堆排序 比起来效率如何?
看了你的原理就是堆排序呀
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表