C++中的substr
basic_string substr( size_type pos = 0,
size_type count = npos ) const;
参数
pos
所需的子字符串的起始位置。字符串中第一个字符的索引为 0,默认值为0.
count
子串的长度
返回值
一个子字符串,从其指定的位置开始
举例https://leetcode-cn.com/problems/palindrome-partitioning/submissions/力扣131
class Solution {
public:
vector<vector<string>> result;
vector<string> temp;
bool isPalindrome(string s){
int i = 0, j = s.size() - 1;
while(i < j){
if(s[i] != s[j])
return false;
i++;
j--;
}
return true;
}
void recursion(string s, int a, int b){
if(a > b){
result.push_back(temp);
return;
}
for(int i = 1; i <= b - a + 1; i++){
if(isPalindrome(s.substr(a, i))){
temp.push_back(s.substr(a, i));
recursion(s, a+i, b);
temp.pop_back();
}
}
}
vector<vector<string>> partition(string s) {
recursion(s, 0, s.size() - 1);
return result;
}
};