题解NC17 | #最长回文子串#
最长回文子串
https://www.nowcoder.com/practice/b4525d1d84934cf280439aeecc36f4af
import java.util.*;
import java.util.stream.Collectors;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param A string字符串
* @return int整型
*/
public int getLongestPalindrome (String A) {
int count = 0;
List<Integer> lengthRecordList = new ArrayList<>();
boolean[][] check = new boolean[A.length()][A.length()];
for (int i = A.length() - 1; i >= 0; i--) {
for (int j = i; j < A.length(); j++) {
if (A.charAt(i) == A.charAt(j)) {
if (j - i < 2) {
check[i][j] = true;
count++;
lengthRecordList.add(j - i + 1);
} else if (check[i + 1][j - 1] == true) {
check[i][j] = true;
count++;
lengthRecordList.add(j - i + 1);
}
}
}
}
return lengthRecordList.stream().sorted(
Comparator.reverseOrder()).collect(Collectors.toList()).get(0);
}
}
一天就做了一题 明天一定要把剩下的做完
