22. Generate Parentheses
来源:互联网 发布:linux分区方案 知乎 编辑:程序博客网 时间:2024/04/30 10:09
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个左括号和n个右括号,当右边括号数量大于左边的时候,可以选择放左括号或右括号,当左括号数量大于0的时候,也可以放左括号.
使用回溯法;
实现代码:
public List<String> generateParenthesis(int n) { List<String> list=new ArrayList<String>(); if(n<=0) return list; generateHelp(n,n,"",list); return list; } public void generateHelp(int left,int right,String str,List<String> list){ if(left==0&&right==0) list.add(str); if(left>0){ generateHelp(left-1,right,str+"(",list); } if(right>left){ generateHelp(left,right-1,str+")",list); } }
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
- XML04-DOM4J解析xml文件
- Android中接口的回调,Activity或Fragment与普通类之间的互相调用
- PHP codeigniter框架
- Java线程总结(六):并发包------线程同步Lock
- 平衡三进制(可推广到n进制)
- 22. Generate Parentheses
- 使用glide和volley创建自己的网络图库
- jdbc底层封装
- 包含cv::Mat和cv::Rect的人眼ROI结构体在内存中的分布
- [LeetCode]3Sum
- nodejs搭建一个简单的httpserver
- 插播-管理书目
- CSS3的calc()使用
- 运算符重载