[LeetCode] #22 Generate Parentheses
生活随笔
收集整理的这篇文章主要介绍了
[LeetCode] #22 Generate Parentheses
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
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:
"((()))", "(()())", "(())()", "()(())", "()()()"
本题是括号匹配输出,利用迭代输出。时间:3ms
代码如下:
class Solution { public:void unguarded_generate(vector<string> &result, string curr, int m, int n){if (m == 0 && n == 0){result.push_back(curr);}else{if (m != 0){cout << curr << endl;unguarded_generate(result, curr + "(", m - 1, n);}if (m < n && n != 0){cout << curr << endl;unguarded_generate(result, curr + ")", m, n - 1);}}}vector<string> generateParenthesis(int n) {vector<string> ret;if (n > 0){unguarded_generate(ret, string(), n, n);}return ret;} };
转载于:https://www.cnblogs.com/Scorpio989/p/4545075.html
总结
以上是生活随笔为你收集整理的[LeetCode] #22 Generate Parentheses的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: UVA 11825 状态压缩DP+子集思
- 下一篇: C语言再学习——分支结构