合并已排序的列表

时间:2012-07-04 12:34:39

标签: c sorting

我有四个排序列表,我想将它们合并到一个排序列表中 最有效的方法是什么?如果实现可以并行完成,那就更好了。

1 个答案:

答案 0 :(得分:4)

这是merge sort的合并部分。

只需取每个列表头部的四个元素中的最小值并将其转储到输出列表中。重复,直到所有列表都为空。假设min4是固定成本,那么这只是O(N)。

如果您有更多信息(例如列表的范围),您可能会稍微改进一下,但我认为这些不会影响渐近的复杂性。