求解Merge Sort中的递归关系

时间:2012-02-25 13:10:40

标签: algorithm recursion

我正在学习大O和复发。 我遇到了一个提到的问题,

t = { 0, n =1 ; T(n-) , n > 1 }

有谁能告诉我如何从这里获得O(n ^ 2)?

2 个答案:

答案 0 :(得分:0)

我不太明白你要问的是什么。但是,通常,O(n ^ 2)算法将使主要操作在2级嵌套循环内执行。像:

 for(a=0;a<5;a++) {
     for(b=0;b<5;b++) {
       /* Some of the main operations of the algorithm */
     }
  }

类似地,包含算法主要操作的3级嵌套循环可能具有O(n ^ 3)的复杂性,等等。

(注意:上述方法可能存在例外情况)

答案 1 :(得分:0)

你问题中的函数有复杂度O(n)如果它是O(n²)它应该是这样的:

T(x) = { 1, x =0 ; n + T(x-1) , x > 1 }

当n是t(x)的计算次数,则x / = 0