Time 时间复杂性,Java

Time 时间复杂性,Java,time,big-o,complexity-theory,Time,Big O,Complexity Theory,请参阅我根据学校示例编写的代码 public class Test { public static void main(String [] args) { int number = 0; int [] array = new int[number+1]; array[number] = 0; methodName(number, array); } public static void methodName(int n, int[] b ) { if (

请参阅我根据学校示例编写的代码

public class Test {
public static void main(String [] args)
{
    int number = 0;
    int [] array = new int[number+1];
    array[number] = 0;
    methodName(number, array);
}

public static void methodName(int n, int[] b )
{
    if (n == 0)
    {
        System.out.println(" b is : " + b);
        return;
    }
    else
    {
        b[n-1] = 0;
        methodName(n-1, b);
        b[n-1] = 1;
        methodName(n-1, b);
    }
}
}
我试图计算这段代码的最佳和最坏情况的时间复杂度。 据我所知,最好的情况是O(1)。 我很难确定最坏的情况。 else循环中有四个基本操作。 我知道这是一个逐渐增长的函数,我感觉它接近O(!n)


谢谢您的时间。

如果methodName没有从main以外的任何地方调用, 那么它总是O(1)