Java 递归冰雹序列

Java 递归冰雹序列,java,recursion,Java,Recursion,程序打印序列的长度、序列中的最大数字、从一到数字的最长序列以及从一到数字的序列最长的数字。除了函数startNumint n应该返回从1到n的冰雹序列最长的数字外,我的一切都是正确的。该代码返回的数字不正确。正确答案是9,因为它的序列最长从1到16,但函数starNum返回的是16。我想问题是startNum函数中的n。在某个时刻,您将使用n=2调用startNum。然后在val=n-;n将递减为1,然后用n-1=0调用递归。您的基本情况是n==1,因此如果n小于1,则它将无限继续运行-或者直到

程序打印序列的长度、序列中的最大数字、从一到数字的最长序列以及从一到数字的序列最长的数字。除了函数startNumint n应该返回从1到n的冰雹序列最长的数字外,我的一切都是正确的。该代码返回的数字不正确。正确答案是9,因为它的序列最长从1到16,但函数starNum返回的是16。我想问题是startNum函数中的n。在某个时刻,您将使用n=2调用startNum。然后在val=n-;n将递减为1,然后用n-1=0调用递归。您的基本情况是n==1,因此如果n小于1,则它将无限继续运行-或者直到堆栈内存耗尽,在这种情况下。

当调用n=2冰雹0而未为0定义冰雹时。

您调用了除n-1之外的冰雹,因此递归不会进行。为什么删除代码?现在我们对你的情况了解得更少了。你给出的描述充其量是模糊/一般的。我不得不更新它抱歉@meowgoesthedog请查看: