package Test1;
public class Huiwenzichuan {
public static void main(String[] args) {
getLongestPalindrome("abba");
getLongestPalindrome("aba");
}
public static int getLongestPalindrome(String a) {
int maxLen = 1;
for (int i = 0; i < a.length() - 1; i++) {
int sd = fun(a, i, i);
int dd = fun(a, i, i + 1);
maxLen = Math.max(maxLen, Math.max(sd, dd));
}
return maxLen;
}
public static int fun(String A, int begin, int end) {
while (begin >= 0 && end < A.length() && A.charAt(begin) == A.charAt(end)) {
begin--;
end++;
}
return end - begin - 1;
}
}
算法:最长回文子串
于 2023-04-22 16:41:07 首次发布
该代码定义了一个名为Huiwenzichuan的类,包含主方法及getLongestPalindrome方法,用于找出给定字符串的最长回文子串。fun方法用于扩展可能的回文中心。主要逻辑是通过两个指针遍历字符串并比较字符来寻找最长回文串。
摘要由CSDN通过智能技术生成