Generate Parentheses
2015-09-02 01:58
246 查看
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:
Solution:
For example, given n = 3, a solution set is:
"((()))", "(()())", "(())()", "()(())", "()()()"
Solution:
class Solution { public: vector<string> generateParenthesis(int n) { vector<string> res; if(n <= 0) return res; dfs(n, 0, 0, "", res); return res; } void dfs(int n, int left, int right, string str, vector<string> &res) { if(left > n || left + right > 2 * n) return ; if(left == n && right == n) { res.push_back(str); return ; } if(left <= n) dfs(n, left + 1, right, str + "(", res); if(right <= n && left > right) dfs(n, left, right + 1, str + ")", res); } };
相关文章推荐
- 寻找最大的K个数
- 解决将Github上的项目导入到Android Studio中去
- C#Memory Management for Unity Developers(Part 1 of 3)
- python 比较包含相同文件夹
- Android回调接口简单理解
- Nginx.conf配置,安全优化
- ios开发之分享应用拓展share extension一
- How to Use updateConstraints(什么时候该使用updateConstraints)
- Activiti整合到springMVC项目的详细配置
- LeetCode_DP_Unique Binary Search Trees II
- iterator 遍历数据循环输入 input中的解决办法。
- Android平台ffmpeg的硬解库生成
- DSOframer 的简单介绍和资源整理
- HDU1026 - Ignatius and the Princess I (广搜+优先队列)
- 日期函数
- php databases support off fail zabbix
- nyoj 288 Time【数组模拟】
- 开始使用虚幻4并创建一个简单的c++类
- Swift中给UIView添加Badge
- Don’t Put View Code Into Your View Controller别把View创建的代码放在VC中(swift)