22. Generate Parentheses
来源:互联网 发布:网络事件 2017 编辑:程序博客网 时间:2024/06/08 03:33
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:
[ "((()))", "(()())", "(())()", "()(())", "()()()"]
格式正确的原则:左括号先于右括号出现,因此用变量分别计数左括号和右括号出现的次数,一开始都是n次,出现一次就减一。当left<right时才加入右括号。backtracking方法。
class Solution { public List<String> generateParenthesis(int n) { List<String> res = new ArrayList<String>(); doParenthesis(res,n,n,""); return res; } public void doParenthesis(List<String> res,int left,int right,String s){ if(left==0&&right==0){ res.add(s); return; } if(left>0) doParenthesis(res,left-1,right,s+"("); if(right>0&&left<right) doParenthesis(res,left,right-1,s+")"); }}
阅读全文
0 0
- [LeetCode]22.Generate Parentheses
- LeetCode --- 22. Generate Parentheses
- LeetCode 22.Generate Parentheses
- [Leetcode] 22. Generate Parentheses
- 【LeetCode】22.Generate Parentheses
- 22. Generate Parentheses
- [leetcode] 22.Generate Parentheses
- 【leetcode】22. Generate Parentheses
- Leetcode-22.Generate Parentheses
- [leetcode] 22. Generate Parentheses
- 22. Generate Parentheses
- 22. Generate Parentheses
- 22. Generate Parentheses LeetCode
- 22. Generate Parentheses
- leetcode 22. Generate Parentheses
- 22. Generate Parentheses
- [LeetCode]22. Generate Parentheses
- 22. Generate Parentheses
- Android的事件分发
- ioutils.ReadAll()会清空对应的reader
- POJ 1979 Red and Black
- 6、Spring技术栈-过滤器使用
- 第四题
- 22. Generate Parentheses
- 2017.9.14 星际竞速 失败总结
- RxJava学习
- 栈的应用----判断括号是否匹配
- 入门指南:如何设置您的第一台服务器
- WARN: Establishing SSL connection without server's identity verification is not recommended. Accordi
- css 宽高自适应的div 元素 如何居中 垂直居中
- ASP.NET MVC4 入门简介
- 2017 ACM-ICPC乌鲁木齐网络赛 B. Out-out-control cars【计算几何||判断射线与线段是否相交】