检查最长回文的程序不起作用

时间:2016-04-27 19:30:03

标签: java

这段代码有什么问题。 Doessnt工作......回复整个字符串...... 我试图检查作为回文的最长子串

我正在使用强力方法来检查回文的每个子串。 为什么这不起作用

whenever

2 个答案:

答案 0 :(得分:2)

sb.reverse()撤消sb并返回此对象。

因此sb1 = sb.reverse();将撤消sb并将sb1分配给sb

你想这样做:

StringBuilder original = new StringBuilder(str);
StringBuilder reverse = new StringBuilder(str).reverse();

答案 1 :(得分:0)

问题在于这一行:

data : {
    currentStatus : 1,
    listOfPossibleStatus : [...],
    message : "The user is ready to sign in",
    token : "...",
    username : "tester@test.com"
}

sb1 = sb.reverse(); 方法反转reverse()本身,因此sbsb都引用相同的sb1对象,其中包含与{{1}相反的对象}。试试这个,而不是声明StringBuilderstr

sb

然后,只需将sb1String revStr = new StringBuilder(str).reverse().toString(); 的所有实例替换为sb,将sb.toString()替换为str