题目22:括号合并
题目描述:
数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。
题解:
func generateParenthesis(n int) []string {
var res []string
brackets(n,0,0,"",&res)
return res
}
func brackets(n int,l int, r int, str string, res *[]string) {
if l==n&&r==n{
*res = append(*res,str)
return
}
if l<n{
brackets(n,l+1, r, str+"(",res)
}
if r<l{
brackets(n,l, r+1,str+")", res)
}
}