[leetcode]Generate Parentheses
2012-12-31 11:32
447 查看
class Solution { public: //p是当前的string( 例如"((()" );k是当前长度,例如4;n是总长度;lMore是左括号比右括号多多少 void generateParenthesis(string p, int k, int n, int lMore){ if (lMore < 0) return; if (k == n){ if (lMore == 0) result.push_back(p); //如果满足条件,push_back并退出 return; //如果不满足条件,直接退出 } string p2 = p + "("; generateParenthesis(p2, k+1, n, lMore+1); string p3 = p + ")"; generateParenthesis(p3, k+1, n, lMore-1); } vector<string> generateParenthesis(int n) { // Start typing your C/C++ solution below // DO NOT write int main() function result.clear(); if (n<1) return result; string p; //p用来存储已经生成的括号对 p.resize(2*n); p.clear(); generateParenthesis(p, 0, 2*n, 0); return result; } private: vector<string> result; };
EOF
相关文章推荐
- 【LeetCode】Generate Parentheses 解题报告
- LeetCode 22: Generate Parentheses
- LeetCode Generate Parentheses
- LeetCode 22 -Generate Parentheses ( JAVA )
- 【leetcode】 Generate Parentheses (middle)☆
- 23 leetcode - Generate Parentheses
- [LeetCode] Generate Parentheses
- LeetCode Generate Parentheses
- [LeetCode]022-Generate Parentheses
- [leetcode]Generate Parentheses
- LeetCode题解——Generate Parentheses
- leetcode[22]Generate Parentheses
- LeetCode: Generate Parentheses
- leetcode-22-Generate Parentheses
- [leetcode] Generate Parentheses
- LeetCode Generate Parentheses DFS或者生产呢排列
- [LeetCode]Generate Parentheses
- Generate Parentheses -- leetcode
- LeetCode_Generate Parentheses
- [leetcode]Generate Parentheses