原文:10G整数文件中寻找中位数或者第K大数

来源:http: hxraid.iteye.com blog 题目:在一个文件中有 G 个整数,乱序排列,要求找出中位数。内存限制为 G。只写出思路即可 内存限制为 G的意思就是,可以使用 G的空间来运行程序,而不考虑这台机器上的其他软件的占用内存 。 分析:既然要找中位数,很简单就是排序的想法。那么基于字节的桶排序是一个可行的方法 请见 桶排序 :思想:将整形的每 byte作为一个关键字,也就 ...

2016-07-03 22:25 2 1213 推荐指数:

查看详情

面试题:在一个文件中有 10G整数,乱序排列,要求找出中位数(内存限制为2G)

假设整数为32bit,4个字节存储 这种题目,首先想到的是分而治之。将文件数字分组。然后遍历文件的数字,按分组进行计数。最后找到中位数所在的分组区间 1、如果10G整数都为同一个,那么10G整数会分布在一个区间,10G=5*2^31 > 2^31 - 1,所以每个分组存储计数的整数 ...

Thu Jun 13 19:50:00 CST 2019 0 476
腾讯面试题:10G整数,乱序排列,要求找出中位数。内存限制为 2G

腾讯面试题:10G整数,乱序排列,要求找出中位数。内存限制为 2G。 题目和基本思路都来源网上,本人加以整理。 题目:在一个文件中有 10G整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空间 ...

Tue Apr 14 06:08:00 CST 2015 0 6007
10G整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可

题目:在一个文件中有 10G整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的 空间来运行程序,而不考虑这台机器上的其他软件的占用内存)。 分析: 既然要找中位数,很简单就是排序的想法。那么基于字节的桶排序是一个可行 ...

Mon Mar 09 05:44:00 CST 2020 0 823
求三个整数中位数

比如三个整数10 12 11,输出11 还是按照从结果出发思考问题 我们用middle变量来存放中位数 那么肯定有int middle 用户输入三个数分别是a b c 最后的结果无非是a是中位数 或者b是中位数 或者c是中位数 如果a是中位数则,middle ...

Sat Oct 13 01:00:00 CST 2018 0 667
oracle 10g 恢复dmp文件

1. 在winxp下,安装10g,默认选择,一路ok。(安装前自检出现dhcp警告,可直接忽略) 2.命令行,在xp下,输入sqlplus,即可启动,登陆用 sqlplus / as sysdba 用管理员登陆 3.在恢复oracle时,先在 sqlplus里,先建立表空间,建用户,并给用户 ...

Tue Jul 21 02:10:00 CST 2015 0 1860
大数找上中位数的方法

题目: 40亿 大整数,组成了一个大文件。想找到其中的 上中位数该怎么办?内存:10MB,怎么办?内存:20K,怎么办?内存:有限几个字符,怎么办?条件:按行读取文件,读取操作不占用内存。 应该具备的能力:2^k = ? 应该都能够熟记,达到反射性反应的程度。字节数 对应计算机的 容量(T ...

Sun Sep 17 03:02:00 CST 2017 0 2206
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM