132. Palindrome Partitioning II

来源:互联网 发布:免费淘宝号和密码大全 编辑:程序博客网 时间:2024/05/22 14:12
class Solution {private:    vector<vector<string>> result;    vector<string> curlist;    bool judge(string &s,int start,int end)    {        if(end==start) return true;        while(end>start)        {            if(s[end]!=s[start]) return false;            end--;            start++;        }        return true;    }    void dfs(string &s,int start)    {        if(curlist.size()>0&&start>=s.size())        {            vector<string> r(curlist);            result.push_back(r);        }        for(int i=start;i<s.size();i++)        {            if(judge(s,start,i))            {                curlist.push_back(s.substr(start,i-start+1));                dfs(s,i+1);                curlist.pop_back();            }        }    }public:    vector<vector<string>> partition(string s) {        dfs(s,0);        return result;    }};
0 0
原创粉丝点击