我试图弄清楚如何确定递归方法的大 O 表示法。我意识到这可能与迭代方法相同,但我不确定这一点。
我编写了这个简单的递归 Java 程序:
public RecursiveFunctions() {
recursiveFunction1(2);
}
// Meget simpel rekursiv metode der taeller en Integer ned
public void recursiveFunction1(int someInteger) {
System.out.println("Tallet er nu : " + someInteger);
someInteger = someInteger * 2;
if (someInteger < 100) {
recursiveFunction1(someInteger);
}
}
我不确定这一点,但我的猜测是这是 O(n) 还是 O(1) 表示法?另外,O(n^2) 或 O(log(n)) 包含什么?