假设整数为32bit,4个字节存储 这种题目,首先想到的是分而治之。将文件中数字分组。然后遍历文件中的数字,按分组进行计数。最后找到中位数所在的分组区间 1、如果10G个整数都为同一个,那么10G整数会分布在一个区间,10G=5*2^31 > 2^31 - 1,所以每个分组存储计数的整数 ...
腾讯面试题: G 个整数,乱序排列,要求找出中位数。内存限制为 G。 题目和基本思路都来源网上,本人加以整理。 题目:在一个文件中有 G 个整数,乱序排列,要求找出中位数。内存限制为 G。只写出思路即可 内存限制为 G的意思就是,可以使用 G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存 。 关于中位数:数据排序后,位置在最中间的数值。即将数据分 成两部分,一部分大于该数值,一部分小于 ...
2015-04-13 22:08 0 6007 推荐指数:
假设整数为32bit,4个字节存储 这种题目,首先想到的是分而治之。将文件中数字分组。然后遍历文件中的数字,按分组进行计数。最后找到中位数所在的分组区间 1、如果10G个整数都为同一个,那么10G整数会分布在一个区间,10G=5*2^31 > 2^31 - 1,所以每个分组存储计数的整数 ...
题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的 空间来运行程序,而不考虑这台机器上的其他软件的占用内存)。 分析: 既然要找中位数,很简单就是排序的想法。那么基于字节的桶排序是一个可行 ...
来源:http://hxraid.iteye.com/blog/649831 题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存 ...
前言 周末逛知乎的时候,看到的一个经典面试题目:http://www.zhihu.com/question/26435483。非常经典的一道分而治之的题目。 题目描写叙述例如以下: 有次面试遇到一个问题,10G的log里面每一行都保存着一个url,内存仅仅有 ...
前言 用python 读取一个大于10G 的文件,自己电脑只有8G内存,一运行就报内存溢出:MemoryError python 如何用open函数读取大文件呢? 读取大文件 首先可以自己先制作一个大于10G的txt文件 循环写入到 xxx.log 文件,运行 3-5 分钟 ...
今天在centos上面安装SQL server 发现了巨硬要求服务器内存大于2G才给安装,在网上搜了一下,发现下面文章完美解决,先码出来,以后也许还有帮助! 首先,贴上微软官方安装方法,大家按照官方的操作就行。微软官方安装方法相信很多同学遇到一个问题就是: 在破解之前,博主要声明 ...
。 输入: 一个作为数组的整数(int)列表(list)的。 输出: 数组的中位数(int, f ...