Generate Parenthesis Problem from Leetcode
以下是Python解决方案:
def generate_parenthesis(self, left, right, p='', parenthesis=[]):
if not right:
parenthesis.append(p)
if left:
self.generate_parenthesis(left-1, right, p+'(')
if right > left:
self.generate_parenthesis(left, right-1, p+')')
return parenthesis
'left','right'分别表示剩余的左右括号。
我的问题是参数“括号”的范围如何在整个递归中起作用。我们用例子
left = right = 2(两个括号对)