题解 | 最长回文子串
最长回文子串
https://www.nowcoder.com/practice/b4525d1d84934cf280439aeecc36f4af
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* @param A string字符串
* @return int整型
*/
public int getLongestPalindrome(String A) {
// write code here
int maxLen = 0;
for (int i = 0; i < A.length(); i++) {
for (int j = A.length() - 1; j >= i; j--) {
if (A.charAt(i) != A.charAt(j)) {
continue;
}
String sub1 = A.substring(i, j + 1);
if (sub1.equals(reverseString(sub1))) {
maxLen = Math.max(maxLen, sub1.length());
}
}
if (maxLen >= A.length() - i) {
break;
}
}
return maxLen;
}
private String reverseString(String s) {
char[] reversed = new char[s.length()];
for (int i = 0; i < s.length(); i++) {
reversed[i] = s.charAt(s.length() - i - 1);
}
return new String(reversed);
}
}

阿里云成长空间 781人发布