Leetcode 22. Generate Parentheses
2017-01-05 13:20
453 查看
Backtracking.
public class Solution {
public static void backTrack(String current, List<String> ret, int left, int right, int n) {
if (current.length() == n*2) {
ret.add(current);
return;
}
if (left < n)
backTrack(current+"(", ret, left+1, right, n);
if (right < left)
backTrack(current+")", ret, left, right+1, n);
}
public List<String> generateParenthesis(int n) {
List<String> ret = new ArrayList<>();
backTrack("", ret, 0, 0, n);
return ret;
}
}
public class Solution {
public static void backTrack(String current, List<String> ret, int left, int right, int n) {
if (current.length() == n*2) {
ret.add(current);
return;
}
if (left < n)
backTrack(current+"(", ret, left+1, right, n);
if (right < left)
backTrack(current+")", ret, left, right+1, n);
}
public List<String> generateParenthesis(int n) {
List<String> ret = new ArrayList<>();
backTrack("", ret, 0, 0, n);
return ret;
}
}
相关文章推荐
- LeetCode 22. Generate Parentheses
- LeetCode-22. Generate Parentheses
- [LeetCode]22. Generate Parentheses
- [Leetcode] 22. Generate Parentheses
- LeetCode - 22. Generate Parentheses
- Leetcode -- 22. Generate Parentheses
- [leetcode] 22. Generate Parentheses
- [LeetCode-Java]22. Generate Parentheses
- LeetCode 22. Generate Parentheses
- leetcode 22. Generate Parentheses
- [Leetcode] 22. Generate Parentheses 解题报告
- [Leetcode] 22. Generate Parentheses
- LeetCode 22. Generate Parentheses(生成括号)
- [LeetCode]22. Generate Parentheses
- LeetCode22. Generate Parentheses
- LeetCode代码分析——22. Generate Parentheses(DFS模板题)
- [LeetCode]22. Generate Parentheses
- leetcode_middle_27_22. Generate Parentheses
- [leetcode]22. Generate Parentheses(Java)
- LeetCode - 22. Generate Parentheses