1.堆排
2.【小文件】对A中单词建立set(unordered_set更好),然后对B中单词遍历,查set中有没有,复杂度是O(nlogn + mlogn),unordered_set应该是O(n+m)
【大文件,内存中放不下】对A中单词做hash,然后根据hash值分桶存储在不同文件中;对B中单词做hash,同样根据hash值分桶存储在不同文件中。然后读取按相同值段的A,B文件,按小文件方法处理。
3.关键字:swap
4.对每条短信做hash,然后按hash值分桶存储在不同文件中;逐个遍历文件,统计相同短信出现的频率,同时在内存中建堆,存频率最高的k个。