Leetcode:22. 括号生成 - 力扣(LeetCode) (leetcode-cn.com)
回溯法
空间复杂度:O(n)
时间复杂度
括号生成 - 括号生成 - 力扣(LeetCode) (leetcode-cn.com)
class Solution(object):
def generateParenthesis(self, n):
"""
:type n: int
:rtype: List[str]
"""
self.res=[]
self._gen(0,0,n,"")
return self.res
def _gen(self,left,right,n,str_):
if left==n and right==n:
self.res.append(str_)
return
if left<n:
self._gen(left+1,right,n,str_+"(")
if left>right and right<n:
self._gen(left,right+1,n,str_+")")