package chapter2; public class Ackerman {
static int s;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Input in=new Input();
int n,m;
System.out.println("输入n:");
n=in.InputInt();
System.out.println("输入m:");
m=in.InputInt();
System.out.println(ackerman(n,m));
} private static int ackerman(int n, int m) {
// TODO Auto-generated method stub
if (n==1&&m==0) {
s=2;
}
if (n==0&&m>=0) {
s=1;
}
if (m==0&&n>=2) {
s=n+2;
}
if(n>=1&&m>=1){
s=ackerman(ackerman(n-1, m), m-1);
}
return s;
} }
当mn为4是出现了这个
Exception in thread "main" java.lang.StackOverflowError
at chapter2.Ackerman.ackerman(Ackerman.java:31)。。。。
大神指教
static int s;
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Input in=new Input();
int n,m;
System.out.println("输入n:");
n=in.InputInt();
System.out.println("输入m:");
m=in.InputInt();
System.out.println(ackerman(n,m));
} private static int ackerman(int n, int m) {
// TODO Auto-generated method stub
if (n==1&&m==0) {
s=2;
}
if (n==0&&m>=0) {
s=1;
}
if (m==0&&n>=2) {
s=n+2;
}
if(n>=1&&m>=1){
s=ackerman(ackerman(n-1, m), m-1);
}
return s;
} }
当mn为4是出现了这个
Exception in thread "main" java.lang.StackOverflowError
at chapter2.Ackerman.ackerman(Ackerman.java:31)。。。。
大神指教









