关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。
上个月关门了。
改进这个问题
所以我们有2gb的内存和100GB的文本文件。我们的任务是打印复制行及其计数。我们只有一个核心处理器。一种解决方案是我们可以为每一行生成一个hashcode,并将其存储到hashmap中。但问题是我们只有2gb内存。让我知道解决这个问题的方法。
关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。
上个月关门了。
改进这个问题
所以我们有2gb的内存和100GB的文本文件。我们的任务是打印复制行及其计数。我们只有一个核心处理器。一种解决方案是我们可以为每一行生成一个hashcode,并将其存储到hashmap中。但问题是我们只有2gb内存。让我知道解决这个问题的方法。
2条答案
按热度按时间kuarbcqp1#
通过四处搜索,大多数解决方案可以归结为:
将文件分成更小的文件,在您的情况下,每个文件2gb;
对每个文件进行排序;
合并和排序
找到并打印副本。
7eumitmz2#
下面的算法性能不太好。它只能说明我将要做什么。
您可以通过一次比较多行来改进此算法。然后你还需要更多的计数器,每行一个进行比较。您必须确保比较行之间没有重复的行。