Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Time complexity 分析合并排序输入加倍时的时间复杂度_Time Complexity_Complexity Theory - Fatal编程技术网

Time complexity 分析合并排序输入加倍时的时间复杂度

Time complexity 分析合并排序输入加倍时的时间复杂度,time-complexity,complexity-theory,Time Complexity,Complexity Theory,我试图从理论上理解,当传递给merge sort的输入大小加倍时,需要多长时间。我当时正在读一本教科书,上面写着: “因为合并的运行时间(对于大N)是O(n Log2 2n),所以我们应该考虑比率,r= n^ { 1.1 } Log2(n^ { 1.1 })/(n Log2(n)),这简化为1.1 n^ { 0.1 },该值在3.5“左右”。 我想问他们是如何计算的,当输入大小增加一倍时,执行合并排序需要大约3.5倍的时间。本质上,他们希望如何进行转换。使用对数算法: 这仍然取决于N 我的猜测

我试图从理论上理解,当传递给merge sort的输入大小加倍时,需要多长时间。我当时正在读一本教科书,上面写着:

“因为合并的运行时间(对于大N)是O(n Log2 2n),所以我们应该考虑比率,r= n^ { 1.1 } Log2(n^ { 1.1 })/(n Log2(n)),这简化为1.1 n^ { 0.1 },该值在3.5“

左右”。
我想问他们是如何计算的,当输入大小增加一倍时,执行合并排序需要大约3.5倍的时间。本质上,他们希望如何进行转换。

使用对数算法:

这仍然取决于N

我的猜测是,他们假设N的一个大数字是100000,所以:


是的,我理解对数运算,但不理解教科书最初是如何得出这种形式的。他们检查了一个比原始输入大1.1次方的输入。对于我猜测的输入大小,它大约会大3倍。