题目:

数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。

示例:

输入:n = 3
输出:[
“((()))”,
“(()())”,
“(())()”,
“()(())”,
“()()()”
]

思路:

  1. 我们可以考虑采用回溯法来做这道题目,通过跟踪左、右括号的数目来放括号,并进行回溯。
  2. 如果左括号数量不大于 n,我们可以放一个左括号。如果右括号数量小于左括号的数量,我们可以放一个右括号。在当前状态穷尽时,返回到上一状态。
  3. 最后当左右括号数目都为0时,将curString添加到列表中。

代码如下
Leetcode——括号生成问题
测试结果:
Leetcode——括号生成问题

相关文章:

  • 2021-06-25
  • 2022-01-12
  • 2021-05-16
  • 2021-08-15
  • 2021-12-11
  • 2021-08-28
  • 2022-02-11
  • 2021-06-25
猜你喜欢
  • 2021-06-08
  • 2021-10-30
  • 2021-12-31
  • 2022-01-26
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案