22. Generate Parentheses
来源:互联网 发布:淘宝店铺首页全屏大图 编辑:程序博客网 时间:2024/05/16 14:07
Generate Parenthese生成圆括号
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:
“((()))”, “(()())”, “(())()”, “()(())”, “()()()”
难点关键在与怎么样生成所有的组合?本题使用了两个if 通过递归依次来输出所有的可能性
代码
public class Solution { public List<String> generateParenthesis(int n) { List<String> list = new ArrayList<String>(); backtrack(list, "", 0, 0, n); return list; } public void backtrack(List<String> list, String str, int open, int close, int max){ //声明一个函数来进行计算open-‘(’ close-‘)’ if(str.length() == max*2){ //每一组括号 list.add(str); return; } if(open < max) backtrack(list, str+"(", open+1, close, max); if(close < open) //注意不是max,因为需要保证最后一个括号是) backtrack(list, str+")", open, close+1, max); } }
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
- 利用属性动画将Button变宽
- 抓取网页数据并解析
- android学习日记02-安装androidstudio完成helloword
- eclipse 设置默认编码为Utf-8 详细教程。
- C语言变量类型与内存
- 22. Generate Parentheses
- spring 对于hibernate操作的封装 HibernateCallback接口的学习
- Canvas绘图
- Qt之QTextCodec乱谈
- https server with openssl 笔记
- vector<vector<Point>>contours; vector<Vec4i>hierarchy;
- “匠人精神”6大内涵:德国登峰造极制造业的成功秘诀
- callback(回调函数)
- 打开excel自动自动打开personal.xlsb表格文件