📜  算法|算法分析|问题14

📅  最后修改于: 2021-06-29 02:35:23             🧑  作者: Mango

在下面的C函数,令n> = m。

int gcd(n,m)
{
  if (n%m ==0) return m;  
  n = n%m;
  return gcd(m, n);
}

此函数进行了多少次递归调用?
(一种) \theta (登录)
(B) \Omega (n)
(C) \theta (登录)
(D) \theta (sqrt(n))
(A) A
(B) B
(C) C
(D) D答案: (A)
说明:上面的代码是用于找到最大公约数(GCD)的欧几里得算法的实现。
有关时间复杂度,请参见http://mathworld.wolfram.com/EuclideanAlgorithm.html。
这个问题的测验