我遵循在最坏情况n log n中调用合并排序,但是每次调用实际合并split参数数组的复杂性如何呢。
合并排序实际上应该是n log n *排序时间意味着什么。
答案 0 :(得分:0)
在“传统”合并排序中,每次传递数据都会使排序的子部分的大小加倍。在第一次传递之后,文件将被分类为长度为2的部分。第二次传球后,长度为四。然后八,十六等,直到文件的大小。
有必要将排序部分的大小加倍,直到有一个部分包含整个文件。将截面大小的lg(N)倍增达到文件大小,并且每次传递数据将花费与记录数量成比例的时间。