Description
Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.
Example
For example, given n = 3, a solution set is:1
2
3
4
5
6
7[
"((()))",
"(()())",
"(())()",
"()(())",
"()()()"
]
Solution
最直接是递归然后剪枝,因为需要成对判断合法性,所以如果left > right的时候就可以剪掉了。
同时如果left == 0 的时候都可以直接把right的括号补全了。
1 | /** |