题解 | #最长回文子串#代码优化
最长回文子串
https://www.nowcoder.com/practice/12e081cd10ee4794a2bd70c7d68f5507
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int maxLen = 0;
String line = in.nextLine();
for(int i=0;i<line.length();i++) {
// 从line最后开始遍历,如果找到,则必然是最长的;
// j>=i+maxLen+1,每次都需要比之前最长的子串要长,否则不需要遍历!
for(int j=line.length();j>=i+maxLen+1;j--) {
String sub = line.substring(i, j);
StringBuilder sb = new StringBuilder(sub).reverse();
if(sb.toString().equals(sub)) {
maxLen = sub.length();
break;
}
}
}
System.out.println(maxLen);
}
}
