回溯算法(深度优先遍历)
生成树的方式:做减法,起始去左边括号:
class Solution:
def generateParenthesis(self, n: int) -> List[str]:
res=[]
one_ex=''
def fun(one_ex,l,r):
if l==0 and r==0:
res.append(one_ex)
return
if l>r:
return
if l>0:
fun(one_ex+'(',l-1,r)
if r>0:
fun(one_ex+')',l,r-1)
fun(one_ex,n,n)
return res
生成树的方式:做加法,起始左边括号: