返回滑动窗口中的最大值。
来源,leetcode 每日一题 131. 分割回文串
示例:
输入: "aab"输出:[["aa","b"],["a","a","b"]]
解题思路
- dfs
代码
class Solution {public:vector<vector<string>> partition(string s) {vector<vector<string>> results;vector<string> temp;int size = s.length();if (size == 0) {return {};}dfs(s, temp, results, size, 0);return results;}void dfs(string& s, vector<string>& temp, vector<vector<string>>& results, int& size, int start) {if (start == size) {results.push_back(temp);return;}// for (auto& item: temp) {// cout << item << " ";// }// cout << endl;for (int i = start; i < size; i++) {if (isPalindom(s, start, i)) {temp.push_back(s.substr(start, i-start + 1));dfs(s, temp, results, size, i + 1);temp.pop_back();}}}bool isPalindom(string& s, int left, int right) {for (int i = 0; i <= right-left; i++) {if (left + i > right-i) {break;} else if (s[left+i] != s[right-i]) {return false;}}return true;}};
