【问题标题】:Extract 1 million integer in sorted form with small physical memory以较小的物理内存以排序形式提取 100 万个整数
【发布时间】:2016-03-22 12:30:46
【问题描述】:

给定 10 个文件,每个文件按排序顺序包含 100 万个整数,物理内存大小为 300 万。 请建议以排序形式有效提取 100 万个整数的方法。

【问题讨论】:

标签: performance file sorting memory ram


【解决方案1】:

如果您想深入了解细节,Knuth Sorting and Searching 提供了不错的书本图标。它是该主题的畅销书,并提供对算法的理解,这些算法甚至在今天仍在使用。

在 StackOverflow 上,how does the MapReduce algorithm work 上的讨论非常精彩。

或来自programmers.stackexchange.com 的关于资源有限的排序算法的讨论。

【讨论】:

    【解决方案2】:

    使用 10 路合并。结果需要 100 万个整数的空间,因此 200 万个整数的剩余空间被分成 10 个部分,因此 10 个输入文件中每个文件的缓冲区大小为 200,000 个整数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-16
      • 1970-01-01
      • 2019-04-24
      • 2012-05-21
      • 2018-08-30
      • 1970-01-01
      • 2015-04-23
      相关资源
      最近更新 更多