修改以合并排序以使用插入排序Java实现合并排序

时间:2013-10-23 04:53:18

标签: java complexity-theory mergesort

我想实现合并修改 sort,其中长度为k的n / k子列表使用插入排序进行排序,然后使用合并 合并的标准合并机制。 我想知道合并排序的修改版本的k值必须等于朗姆时间复杂度的合并排序的原始版本。这是我自己的概念练习。我们赞赏代码和/或解释。

1 个答案:

答案 0 :(得分:0)

你的n / k-way合并是O(n ^ 2 / k)(解释here)。每个插入排序都是O(k ^ 2)。观察到对于任何k值,您的整体运行复杂度将保持为O(n ^ 2);因此,没有k的值将允许您修改的合并排序为O(nlogn)