没有合适的资源?快使用搜索试试~ 我知道了~
示例 1:输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]示例 2:输入:n = 1输出:["
资源详情
资源评论
资源推荐
括号生成
数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号
组合。
示例 1:
输入:n = 3
输出:["((()))","(()())","(())()","()(())","()()()"]
示例 2:
输入:n = 1
输出:["()"]
class Solution {
public:
vector<string> generateParenthesis(int n) {
vector<string> res;
int left=0;
int right=0;
dfs(res,"",n,left,right);
return res;
}
void dfs(vector<string>&res,string str,int n,int l,int r)
{
if(l<r||l>n||r>n)
return;
if(l==r&&l==n)//左右括号数量匹配且 达到要求的 n 个数
{
res.push_back(str);
}
dfs(res,str+'(',n,l+1,r);
dfs(res,str+')',n,l,r+1);
}
};
坐在地心看宇宙
- 粉丝: 24
- 资源: 330
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0