# 回文子串
思路:
动态规划,中心扩展的方式
参考 其中的2n-1是为了防止字符串的长度出现奇偶,中间字符一个或两个的问题。
public static int countSubstrings(String s) {
int length = s.length(), res = 0;
for (int i = 0; i < 2 * length - 1; i++) {
int L = i / 2, R = i / 2 + i % 2;
while (L >= 0 && R < length && s.charAt(L) == s.charAt(R)) {
L--;
R++;
res++;
}
}
return res;
}
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12