问题描述
- 新手菜鸟关于编程珠玑的疑问
-
大神们好,我是新手,在看编程珠玑的时候想到一个问题。问题描述如下: 给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中的32位整数 如果内存不足,仅可以用文件来进行处理,如何处理? 编程珠玑和网上各种大神的想法都是这样的: 按最高位分为两段,没有出现的那个数,肯定在比较小的段里面。 各位是不考虑这种情况,还是不可能出现这种情况?: 按每一位分段,分出来的都是相等数目的数。比如说从42亿个32位数里面取出来2亿个数,全取对称数。比如第一个取1,前31位都是0,第二个就取0,前31位也是0,只是32位和1相反。比如3和4,这个应该不难吧。 如果这样的话,那40多亿数按位,分出来的所有段都是相等段,不存在较小的段,这样还能用这种方法嘛。。 新手,没有金币,不过真的很疑惑这个问题,希望大神不吝赐教!
时间: 2024-12-02 12:01:56