Generate Parentheses

来源:互联网 发布:达内云笔记源码 编辑:程序博客网 时间:2024/06/05 05:07
class Solution {public:    vector<string> res;    void dfs(int leftCnt,int totalCnt,int n,string s)    {if((leftCnt-(totalCnt-leftCnt))>(n-totalCnt)){return;}        if(totalCnt==n)        {            res.push_back(s);            return;        }        if(leftCnt>(totalCnt-leftCnt))        {            dfs(leftCnt,totalCnt+1,n,s.append(1,')'));s.pop_back();        }        dfs(leftCnt+1,totalCnt+1,n,s.append(1,'('));    }    vector<string> generateParenthesis(int n) {        dfs(0,0,n*2,string());        return res;    }};

0 0
原创粉丝点击