LeetCode
来源:互联网 发布:网络通缉犯查询 编辑:程序博客网 时间:2024/05/04 16:20
解题代码:
classSolution {
public:
void com(string str,int a,intb,vector<string>& res){
if(a==0&&b==0){
res.push_back(str);
return;
}
if(b>0)
com(str+")",a,b-1,res);
if(a>0)
com(str+"(",a-1,b+1,res);
}
vector<string>generateParenthesis(int n) {
vector<string> res;
if(n<=0)
return res;
int a=n,b=0;
string str;
com(str,a,b,res);
return res;
}
};
解题思路:
题目要求给出所有配对正确的n对括号组成的字符串。因此共有n个“(”和n个“)”。我采用的是递归的方法,一开始共有a(n)个左括号和b(0)个又括号需要输入,当a和b大于0的时候,说明下一个字符是左括号或者右括号都是正确的,分别对两个情况进行下一步操作。直至最后a和b的值均为0则说明达到字符串合适长度。输出该结果。
0 0
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode
- leetcode:
- leetcode:
- LeetCode
- leetcode
- LEETCODE
- leetcode
- leetCode
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode:
- leetcode
- 自定义注解
- kvm虚拟机安装,配置,活动迁移
- C# Lock
- i5 6500+技嘉B150M-D3H装苹果Mac 10.12.4总结
- JAVA学习笔记(四)——this关键字的使用
- LeetCode
- 2017华为机试题--全排列问题
- Reversing Linked List
- PAT L3-003社交集群 (并查集)
- 点txt文件及部分软件菜单中文乱码
- Matlab 数值计算----迭代法计算非线性方程组在指定区间的根
- 请柬(双向SPFA及SLF LLL优化法模板题)
- Java基础回顾--基本数据类型包装类 3
- 汉诺塔