class Solution {
public:
vector<string> generateParenthesis(int n) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
string cur;
vector<string> ans;
recursion(n, n, cur, ans);
return ans;
}
private:
void recursion(int left, int right, string cur, vector<string> &ans) {
if (left == 0 && right == 0) {
ans.push_back(cur);
return;
}
if (left > 0) {
recursion(left - 1, right, cur + "(", ans);
}
if (right > left) {
recursion(left, right - 1, cur + ")", ans);
}
}
};
LeetCode Generate Parentheses
最新推荐文章于 2018-02-24 19:45:54 发布