文件名称:leetcode走楼梯-leetCodeSolve:leetcode解题记录
文件大小:131KB
文件格式:ZIP
更新时间:2024-07-20 23:49:13
系统开源
leetcode走楼梯
leetCodeSolve
leetcode解题记录
1.
两数之和
题目描述
审题
解题思路
关键代码片段
20.
有效括号
题目描述
审题
解题思路
关键代码片段
22.
括号生成
题目描述
数字
n
代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且
有效的
括号组合
示例:
输入:n
=
3
输出:["((()))","(()())","(())()","()(())","()()()"]
审题
解题思路
1.
枚举所有的括号组合,通过判断**有效括号**
筛选有效括号组合。
2.
利用剪枝的方法,避免无效的枚举。直接得到有效括号组合
①、左括号数量必须小于n
②、左括号先于右括号出现,且只有当右括号的数量小于左括号的数量时才允许添加右括号,并且需要保证右括号的数量小于n
③、利用①和②两个条件就可以有选择的添加左右括号,避免无效的枚举。
关键代码片段
①、枚举+
筛选
//递归列举所有结果,然后筛选
void
Solution::_generate(int
level,
int
limit,
string
s,vector
【文件预览】:
leetCodeSolve-master
----main.exe(540KB)
----.vscode()
--------launch.json(923B)
--------c_cpp_properties.json(526B)
--------settings.json(1KB)
--------tasks.json(447B)
----code()
--------1 两数之和.cpp(2KB)
--------20 有效的括号.cpp(2KB)
--------142 环形链表II.cpp(1KB)
--------206 反转链表.cpp(2KB)
--------22 括号生成.cpp(2KB)
--------70 爬楼梯.cpp(1KB)
--------141 环形链表.cpp(2KB)
----main.cpp(1KB)
----README.md(4KB)