美文网首页
回文子串

回文子串

作者: windUtterance | 来源:发表于2020-10-12 10:13 被阅读0次

    题目描述
    给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。
    具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。

    示例
    输入:"abc"
    输出:3
    解释:三个回文子串: "a", "b", "c"

    Java代码

    class Solution {
        public int countSubstrings(String s) {
            int n = s.length();
            boolean[][] dp = new boolean[n][n];
            int count = 0;
            for(int j = 0;j < n;j++) {
                for(int i = 0;i <= j;i++) {
                    if(s.charAt(j) == s.charAt(i))
                        if(dp[i][j] = i==j || j - i == 1 ||dp[i + 1][j - 1])
                            count++;
                }
            }
            return count;
        }
    }
    

    相关文章

      网友评论

          本文标题:回文子串

          本文链接:https://www.haomeiwen.com/subject/uqpgektx.html