题解 | #括号生成#

括号生成

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

#include <vector>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param n int整型 
     * @return string字符串vector
     */
    vector<string> res;
    void dfs(int n , int count, string& s){
        if (s.size()==2*n) {
            if(count == 0){
                res.push_back(s);
                return;
            }

            return;
        }
        if(count+1<=n){
            s.push_back('(');
            count = count + 1;
            dfs(n, count, s);
            count = count - 1;
            s.pop_back();
        }
        if(count-1>=0) {
            s.push_back(')');
            count= count - 1;
            dfs(n,count,s);
            count = count +1;
            s.pop_back();
        }
    }
    vector<string> generateParenthesis(int n) {
        string s;
        dfs(n, 0, s);
        return res;
    }
};

全部评论

相关推荐

06-12 16:00
天津大学 Java
牛客30236098...:腾讯坏事做尽,终面挂是最破防的 上次被挂了后我连简历都不刷了
点赞 评论 收藏
分享
湫湫湫不会java:先投着吧,大概率找不到实习,没实习的时候再加个项目,然后把个人评价和荣誉奖项删了,赶紧成为八股战神吧,没实习没学历,秋招机会估计不多,把握机会。或者说秋招时间去冲实习,春招冲offer,但是压力会比较大
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-01 17:00
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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