leetcode:Generate Parentheses
2014-10-06 10:30
267 查看
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:
public class Solution {
public List<String> generateParenthesis(int n) {
List<String> result = new LinkedList<>();
result.add("()");
for (int i = 1; i < n; ++i) {
Set<String> buffer = new HashSet<>();
for (int j = 0; j < result.size(); ++j) {
String str = result.get(j);
for (int k = 0; k < str.length(); ++k) {
buffer.add(str.substring(0, k) + "()" + str.substring(k, str.length()));
}
}
result.clear();
result.addAll(buffer);
}
return result;
}
}
For example, given n = 3, a solution set is:
"((()))", "(()())", "(())()", "()(())", "()()()"
public class Solution {
public List<String> generateParenthesis(int n) {
List<String> result = new LinkedList<>();
result.add("()");
for (int i = 1; i < n; ++i) {
Set<String> buffer = new HashSet<>();
for (int j = 0; j < result.size(); ++j) {
String str = result.get(j);
for (int k = 0; k < str.length(); ++k) {
buffer.add(str.substring(0, k) + "()" + str.substring(k, str.length()));
}
}
result.clear();
result.addAll(buffer);
}
return result;
}
}
相关文章推荐
- Leetcode Generate Parentheses
- leetcode Generate Parentheses 难度系数3 3.10
- leetcode Generate Parentheses
- ***(leetcode_backtracking) Generate Parentheses
- LeetCode---Generate Parentheses
- Leetcode90: Generate Parentheses
- leetcode — generate-parentheses
- leetcode做题总结,题目Generate Parentheses 2012/02/12
- Leetcode 22 Generate Parentheses
- LeetCode Generate Parentheses
- LeetCode : Generate Parentheses [java]
- Generate Parentheses--LeetCode
- leetcode---Generate Parentheses
- LeetCode 22 - Generate Parentheses
- Generate Parentheses [leetcode] 循环,DP和递归
- Generate Parentheses - LeetCode
- LeetCode Generate Parentheses (DFS)
- Leetcode -- Generate Parentheses
- LeetCode: Generate Parentheses
- Leetcode Generate Parentheses