LeetCode_Generate Parentheses

时间:2021-06-20 05:54:44
 Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

For example, given n = 3, a solution set is:

"((()))", "(()())", "(())()", "()(())", "()()()"

  

class Solution {
public:
DFS(string s, int left, int right)
{
if(left + right == n * ){
res.push_back(s);
return;
}
if(left == right){
s += '(';
DFS(s, left+, right);
}else if(left > right){
if(left < n){
DFS(s+'(', left+, right);
}
DFS(s+')', left, right +);
}
}
vector<string> generateParenthesis(int n) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
res.clear();
this->n = n;
string s = "";
DFS(s, , );
return res;
}
private:
vector<string> res;
int n;
};