本文共 710 字,大约阅读时间需要 2 分钟。
dfs()整个字符串即可。
class Solution {public: int n; vector<vector<string>> ans; bool check(string s) //判断当前字符串是否为回文串 { return s==string(s.rbegin(),s.rend()); } void dfs(int u,vector<string> &v,string s) //当前下标 当前字符串数组 字符串s { if(u==n){ ans.push_back(v); return ; } string temp; for(int i=u;i<n;i++) { temp+=s[i]; if(check(temp)) { v.push_back(temp); dfs(i+1,v,s); v.pop_back(); } } } vector<vector<string>> partition(string s) { n=s.size(); vector<string> v; dfs(0,v,s); return ans; }};
转载地址:http://naag.baihongyu.com/