LeetCode 22. Generate Parentheses
2017-02-17 14:34
274 查看
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:
answer:
class Solution {
public:
vector<string> generateParenthesis(int n) {
vector<string> result;
string str = "";
addPar(result,str,n,0);
return result;
}
void addPar(vector<string> & result, string str, int left, int right){
if(left == 0 && right == 0){
result.push_back(str);
return;
}
if(left > 0){
addPar(result, str + "(", left - 1, right + 1);
}
if(right > 0){
addPar(result, str + ")", left, right - 1);
}
}
};
For example, given n = 3, a solution set is:
[ "((()))", "(()())", "(())()", "()(())", "()()()" ]
answer:
class Solution {
public:
vector<string> generateParenthesis(int n) {
vector<string> result;
string str = "";
addPar(result,str,n,0);
return result;
}
void addPar(vector<string> & result, string str, int left, int right){
if(left == 0 && right == 0){
result.push_back(str);
return;
}
if(left > 0){
addPar(result, str + "(", left - 1, right + 1);
}
if(right > 0){
addPar(result, str + ")", left, right - 1);
}
}
};
相关文章推荐
- Leetcode 22. Generate Parentheses
- [LeetCode]22. Generate Parentheses
- [Leetcode] 22. Generate Parentheses
- LeetCode - 22. Generate Parentheses
- LeetCode 22. Generate Parentheses
- Leetcode -- 22. Generate Parentheses
- [leetcode] 22. Generate Parentheses
- [LeetCode-Java]22. Generate Parentheses
- LeetCode 22. Generate Parentheses
- leetcode 22. Generate Parentheses
- [Leetcode] 22. Generate Parentheses 解题报告
- LeetCode-22. Generate Parentheses
- [Leetcode] 22. Generate Parentheses
- LeetCode 22. Generate Parentheses(生成括号)
- [LeetCode]22. Generate Parentheses
- LeetCode22. Generate Parentheses
- LeetCode代码分析——22. Generate Parentheses(DFS模板题)
- [LeetCode]22. Generate Parentheses
- [leetcode]22. Generate Parentheses(Java)
- leetcode 22. Generate Parentheses