设置全局变量以计算递归

时间:2015-10-25 02:31:59

标签: java recursion global-variables

array[n]="";

我想设置一个全局变量来计算程序调用递归的时间。我知道数字7它称之为17次。

我被告知这很容易,但我有点挣扎。

1 个答案:

答案 0 :(得分:0)

只需在类范围内声明一个静态int变量,并在每次调用该方法时递增。

public class collatzpow {

public static int count = 0;
public static PrintStream StdOut = System.out;

public static int collatz(int n) {
    ++count;
    StdOut.print(n + " ");
    if (n == 1) return 0;
    if (n % 2 == 0) return collatz(n / 2);
    else return collatz(3 * n + 1);

}

public static void main(String[] args) {

    int n = Integer.parseInt(args[0]);
    StdOut.println(collatz(7));
    System.out.println(count);
}
  }