Leetcode 78子集
Leetcode 78子集
赵海波数字
n
代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例 1:
1
2 >输入:n = 3
>输出:["((()))","(()())","(())()","()(())","()()()"]示例 2:
1
2 >输入:n = 1
>输出:["()"]提示:
1 <= n <= 8
回溯需要画出树形图,能够发现其实原题能够转化为一个满二叉树
但是根据情况肯定不能输出所有节点的值,所以需要一些剪枝。这里增加了left与right参数,分别代表左括号与右括号的数量,每生成一个就增加一个。
代码:
1 | class Solution(object): |
评论
匿名评论隐私政策