leetcode 回溯算法_java生成带括号的算术题

leetcode 回溯算法_java生成带括号的算术题原题链接数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例 1:输入:n = 3输出:[“((()))”,”(()())”,”(())()”,”()(())”,”()()()”]示例 2:输入:n = 1输出:[“()”] 提示:1 <= n <= 8题解回溯class Solution {public: vector<string>res; string t = “”; voi

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

原题链接
数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。

示例 1:

输入:n = 3
输出:["((()))","(()())","(())()","()(())","()()()"]
示例 2:

输入:n = 1
输出:["()"]
 

提示:

1 <= n <= 8

题解
回溯

class Solution { 
   
public:
    vector<string>res;
    string t = "";
    void dfs(int u,int num,int len){ 
   
        if(u == len && num == len){ 
   
            res.push_back(t);
            return;
        }
        if(u < len){ 
   
            t.append(1,'(');
            dfs(u + 1,num,len);
            t.erase(t.size() - 1,1);
        }
        if(num < u){ 
   
            t.append(1,')');
            dfs(u,num + 1,len);
            t.erase(t.size() - 1,1);
        }
    }
    vector<string> generateParenthesis(int n) { 
   
        dfs(0,0,n);
        return res;
    }
};
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/168725.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • StartActivityForResult详解

    StartActivityForResult详解转载自:https://www.cnblogs.com/zgqys1980/p/5286208.html 一、如果想在Activity中得到新打开Activity关闭后返回的数据,需要使用系统提供的startActivityForResult(Intentintent,intrequestCode)方法打开新的Activity,新的Activity关闭后会向前面的Activity…

  • 区块链之P2P技术

    区块链之P2P技术P2P网络:Intel:通过系统间的直接交换达成计算机资源与信息的共享IBM:由若干互联协作的计算机构成并具备如下特性之一:系统依存于边缘化设备的主动协作;每个成员同时扮演客户端和服务器的角色;系统应用的用户能意识到彼此的存在而构成一个虚拟或真实的群体节点彼此对等,既作为服务和资源的提供者,又作为服务和资源的获取者区块链依靠P2P网络可扩展性、健壮性:P2P网络中的所有对等节点都可以提供带宽、存储空间以及计算能力等资源,随着更多节点的加入,系统整体的资源和服务能力也在同步地得到扩充。负载均衡

  • python编译器与解释器_python有哪些编辑器

    python编译器与解释器_python有哪些编辑器Python编译器与解释器Python的环境我们已经搭建好了,可以开始学习基础知识了。但是,在此之前,还要先说说编译器与解释器相关的内容。如果这部分内容,让你觉得难以理解或不能完全明白,可以暂时

  • chm 已取消到该网页的导航,打不开!

    chm 已取消到该网页的导航,打不开!

  • 史上最详细的 JDK 1.8 HashMap 源码解析

    史上最详细的 JDK 1.8 HashMap 源码解析可能是史上最详细的HashMap源码解析。

  • lvm+磁盘配额

    lvm+磁盘配额

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号