【发布时间】:2015-04-14 03:41:37
【问题描述】:
问题:
数学证明,以下 2D 递归关系支配这些值:
F(n,t) = F(n-1,t) + F(n,t-1)
现在,回答以下问题:
(b) 使用递归方法,实现上述关系。
(c) 使用 (5,5)、(10, 10) 和 (14,14) 测试您的方法
//主要方法
public static void main(String[] args) {
// TODO code application logic here
TwoDimension a = new TwoDimension();
a.F(5, 5);
a.F(10, 10);
a.F(14, 14);
}
//类
public static class TwoDimension {
public TwoDimension() {
}
public long F(int n, int t) {
if (t == 1) {
return 1;
} else {
return F(n - 1, t) + F(n, t - 1);
}
}
}
这是输出
Exception in thread "main" java.lang.StackOverflowError
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
at project2.Project2$TwoDimension.F(Project2.java:37)
请帮助meeeee,如何修复返回方法?
【问题讨论】:
-
您有
n的基本案例吗?这可能就是让你崩溃的原因。