我似乎无法理解这是如何工作的.
问题:
给定一个顺序文件,其中包含最多40个随机顺序的32位整数,找到一个不在文件中的32位整数(并且必须至少有一个缺失)
答:
根据代表每个整数的32位来查看这个二进制搜索是有帮助的.在算法的第一遍中,我们读取(最多)40亿个输入整数,并将具有前导零位的那些写入一个顺序文件,将那些具有前导一位的那些写入另一个文件.
其中一个文件最多包含20亿个整数,因此我们接下来将该文件用作当前输入并重复探测过程,但这次是在第二位.
所以通过一遍又一遍地分割文件(二进制搜索),这实际上会导致我丢失32位整数?