给你A,B两个文件,各存放50亿条URL,每条URL占用64字节,内存限制是4G,让你找出A,B文件共同的URL
然后我们按顺序读入数据A,每从a中获得一条url时,我们可以用url获得它的hash值(经典的散列函数很多),然后将它的hash值映射到这个位数组中,将b[hash值]=1,读完了a数组,这个位数组有50亿位已经被置为1了,然后我们读入b文件,每读入一条用同样的hash函数算,再映射到位数组中,如果那一位已经被置为1说明 b中的这条url和a中的一样 就将它保存下来,读完 b数组 所有的相同Url就都保存下来了,这个方法是线性的,希望楼主看看。