算法题---求字符串中是回文子串的个数

 动态规划方法求解

 代码实现c++版

class Solution {
public:
    int countSubstrings(string s) {
        int size = s.length();
        int count = 0;
        vector<vector<int> > dp(size, vector<int>(size));
        for(int j=0; j<size; j++){
            for(int i=0; i<=j; i++){
                if(i == j){
                    dp[i][j] = 1;
                    count++;
                }else if(j - i == 1 && s[i] == s[j]){
                    dp[i][j] = 1;
                    count++;
                }else if(j-i>1 && s[i] == s[j] && dp[i+1][j-1] == 1){
                    dp[i][j] = 1;
                    count++;
                }
            }
        }
        return count;
    }
};
原文地址:https://www.cnblogs.com/syw-home/p/13622668.html