这道题我十分困惑,请教大神
下面算法的时间复杂度为 。
int f(unsigned int n)
{
if (n==0|| n==1) return 1;
else return n*f(n-1);
}
A. O(1)B. O(n)C. O(n2)D. O(n!)
[解决办法]
递归求n!啊,O(n)时间复杂度
[解决办法]
这个知道吧:
int f(unsigned int n)
{
type res =1;
for (; n > 1; n--)
res *= n;
return res;
}
[解决办法]
时间复杂度是O(n)
[解决办法]
http://bbs.csdn.net/topics/390374389#post-393746056
[解决办法]
我的意思就是放在这里我也是这个答案。
[解决办法]
不理解啊,乘法的O(1)不是伪多项式算法吗?