计数排序在这种情况下可能不起作用,因为 k 的取值范围很大。
快速排序可以用于大数据吗?
最佳答案
数百万个元素通常不被视为大数据,因此我相信在这种情况下快速排序可以解决问题。
您可以通过将数组拆分为 q
来稍微固定它子数组,对它们进行并行排序,然后使用 k-way-merge 合并生成的排序子数组。
但是,如果您的数据非常庞大 (10^9+) - 您需要考虑将作业分配给机器集群。
一种可扩展的方法是 map-reduce 强>。
The first slides of this class讨论使用 Map-Reduce 进行排序。
您可能想尝试名为 Hadoop 的 java 开源实现.
关于java - 什么是对文件中数百万行整数进行排序的有效算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17921667/