问题 :
在数学上证明了以下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,如何维修退换货方法?
在你的代码中
F(n, t - 1);
将评估t的基本条件。但
F(n - 1, t)
在那里,您传递的值与t相同。因此它永远不会改变,也永远不会达到t的基本条件。除此之外,您也没有n的任何基值。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句