首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

算法,求1亿个数的中位数解决方法

2012-05-29 
算法,求1亿个数的中位数内存只能容纳100W个数,现在有1亿数,混序,然后求这一亿个数的中位数,中位数(就是一

算法,求1亿个数的中位数
内存只能容纳100W个数,现在有1亿数,混序,然后求这一亿个数的中位数,中位数(就是一个有序数组的中间数字,数组长度为偶数就是两个,奇数则只有一个)
我想了半天最后只想出一个超没效率的方法,所以请各位大虾能够指点一下.




[解决办法]
你什么内存啊,
1亿个数字也就几百MB而已啊。。。
[解决办法]
内存只能容纳100W个数 这个只能算是个限制条件吧`~
[解决办法]
是不是说要先排序,然后找出中间的那个数或中间的那两个数
数字有1亿个,太多了,排序算法或许可以有归并算法
学了太久了,也不知道是不是,回去想想后再来看看
[解决办法]
如果100w个数是个规定,想法应该类似文件的对路归并排序了。。
[解决办法]
外排,然后取第五千万和五千万零一的数。

热点排行