【发布时间】:2018-05-29 07:59:01
【问题描述】:
我不知道从哪里开始计算这个函数的时间复杂度。这个函数的O(时间复杂度)是多少?我知道答案是 3^n。
int f3(int n) {
if (n < 100)
return 1;
return n* f3(n-1) * f3(n-2) * f3(n-3)
}
【问题讨论】:
-
对于初学者来说,它具有不同的时间复杂度,具体取决于
n >= 100与否。手动运行n=103的代码并进行推断。此外,这将很快溢出int。 -
这个已经回答过了,看一下就行了Here
-
我认为我们应该从n到103计算它。103之后看其他的并不重要,但我无法计算出来。
-
首先写下复杂度的递归关系。
-
@AditiRawat 因为添加 TurboC++ 会有点过分。