https://github.com/apachecn/awesome-algorithm/blob/master/docs/Leetcode_Solutions/Python/0022._generate_parentheses.md

关于回溯法讲解的很好
三原则:

  • 选择
  • 限制
  • 结束条件

对于这道题,在任何时刻,你都有两种选择:

  • 加左括号。
  • 加右括号。

同时有以下限制:

  • 如果左括号已经用完了,则不能再加左括号了。
  • 如果已经出现的右括号和左括号一样多,则不能再加右括号了。因为那样的话新加入的右括号一定无法匹配。

结束条件是: 左右括号都已经用完。