面试场景题
1.topK,高频元素,大文件小内存
如何从海量数据中找出高频词? | Vingkin的学习博客
问题:有一个 1G 大小的文件,里面每一行是一个词,每个词的大小不超过 16 字节,内存限制大小是 1M。返回出现频率最高的 100 个单词
2g文件搜索topK个元素
先分割,比如2g = 512k * 2048个小文件
你要对每个小文件做单词统计,那一共需要2048个hash表,也就是hash数组
对每个小文件遍历建立小hash?
然后对统计的hash对加入k大小的小根堆,这样能找到top k个最大的