class Solution:
def generateParenthesis(self, n: int) -> List[str]:
self.res = []
self.backtrace(n, 0, 0, '')
return self.res
def backtrace(self, n, left, right, item):
if right == n and left == n:
self.res += [item]
return
if left < n or right < n:
if left > right and left <n:
self.backtrace(n, left + 1, right, item + '(')
self.backtrace(n, left, right + 1, item + ')')
elif left > right and left == n:
self.backtrace(n, left, right + 1, item + ')')
elif left == right:
self.backtrace(n, left + 1, right, item + '(')
22. 括号生成
最新推荐文章于 2022-04-26 17:46:38 发布