程序中的StackOverflow错误,我找不到原因

时间:2018-09-02 14:28:36

标签: java runtime-error

void recur(int i)
{
    if(i==n)
        return;
    String sub="";
    for(int j=i+1;j<n;j++)
    {
        sub=s.substring(i,j);
        if(isPalindrome(sub))
            System.out.println(sub);
    }
    recur(i++);
}

我在{p>遇到StackOverflowError

sub=s.substring(I,j); 

声明。

s="geeks", initial value of I=0;

2 个答案:

答案 0 :(得分:1)

recur(i++);

表达式i++的值是当前时间i的值;然后增加它。

因此,您基本上是在调用:

recur(i);
i++;

因此,您只是使用相同的参数再次调用recur

尝试:

recur(++i);

答案 1 :(得分:1)

尝试一下

combined_model = Model(inputs=input_model.input, outputs=base_model.output)