题解 | #括号生成#

括号生成

http://www.nowcoder.com/practice/c9addb265cdf4cdd92c092c655d164ca

class Solution {
public:
    /**
     * 
     * @param n int整型 
     * @return string字符串vector
     */
    vector<string> generateParenthesis(int n) {
        vector<string> res;
        string s = "";
        digui(res,n,n,s);
        return res;
    }
    void digui(vector<string>& res,int i,int j,string s){//i,j分别是代表左右括号剩余个数
        if(i == 0&&j == 0){//都是0,返回
            res.push_back(s);
            return;
        }
        if(i>=j){//左括号多,先放左括号
            digui(res, i-1, j, s+"(");
            return;
        }
        if(i==0&&j>0){//开始放右括号
            digui(res, i, j-1, s+")");;
            return;
        }
        if(i<j){
            digui(res, i-1, j, s+"(");//先放左括号的那种方法
            digui(res, i, j-1, s+")");//然后放右括号的那种方法
            return;
        }
    }
};
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-04 18:02
好不容易拿到了字节Offer,鼠鼠做后端的,但家里人觉得可能被裁员不稳定,让鼠鼠去投国企,现在好纠结到底该咋选
文档传偷助手:该投就投吧,不过建议别放弃offer 拿到手里的才是最好的
投递字节跳动等公司9个岗位
点赞 评论 收藏
分享
每晚夜里独自颤抖:你cet6就cet6,cet4就cet4,你写个cet证书等是什么意思。专业技能快赶上项目行数,你做的这2个项目哪里能提现你有这么多技能呢
点赞 评论 收藏
分享
06-23 11:43
门头沟学院 Java
allin校招的烤冷...:我靠,今天中午我也是这个hr隔一个星期发消息给我。问的问题还是一模一样的😅
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务