每日一题 2019 - 03 - 11
题目:
Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.
For example, given n = 3, a solution set is:
1 | [ |
解法:
这个题让我们给定N对括号,找出所有符合括号配对条件的组合;
思路大概就是回溯:
- 从给出的样例我们可以看出,左括号紧挨着出现的次序依次递减,那么我们可以先遍历左括号,每次令 N - 1,在往深层次遍历过程中逐步加入
(
- 在加入
(
的过程中要考虑加入)
,因为括号是成对出现的 - 同时需要两个限制条件:
- 1). 左括号数目未加入序列的数目要小于右括号
- 2). 左右括号遗留数目都为0时候表示已经加入完毕
代码:
1 | class Solution { |