首页 > 其他 > 详细

22. 括号生成

时间:2020-03-15 19:18:07      阅读:51      评论:0      收藏:0      [点我收藏+]
 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. 括号生成

原文:https://www.cnblogs.com/yuhong1103/p/12499221.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!