22. 括号生成
Posted yuhong1103
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了22. 括号生成相关的知识,希望对你有一定的参考价值。
1 //这道题没有思路,借鉴别人的代码 2 3 4 //1、使用递归。 5 //2、每次可以放置左括号的条件是当前左括号的数目不超过 nn。 6 //3、每次可以放置右括号的条件是当前右括号的数目不超过左括号的数目。 7 class Solution 8 { 9 vector<string> res; 10 void DFS(int l,int r,int n,string temp) 11 { 12 if(l == n && r == n) 13 { 14 res.push_back(temp); 15 return; 16 } 17 if(l < n) DFS(l + 1, r, n, temp + "("); 18 if(r < l) DFS(l, r + 1, n, temp + ")"); 19 } 20 public: 21 vector<string> generateParenthesis(int n) 22 { 23 if(n == 0) return res; 24 DFS(0,0,n,""); 25 return res; 26 } 27 };
以上是关于22. 括号生成的主要内容,如果未能解决你的问题,请参考以下文章