搜索
Ctrl K
计算机技术
文章
生活
杂文
力扣
豆瓣读书
力扣
leetcode Writeup Record
单调栈
回溯
字符串
数组
栈
树
链表
队列
155.最小栈
采用 pair
只需一个栈;加入元素就与 top 元素 进行 min 求值,就能保证当前 元素记录着对应 栈的最小元素
#栈
20.有效的括号
栈 适合解决对称性问题,这也是栈的一个特点
#栈
40.组合总和 II
前面做的组合题,不管强调与否,数组中的元素都是没有重复的,但这道题恰恰相反。看来只要解决重复元素可能带来的问题就可以了。我们就用一个布尔值 note 标记,如果 note 为 false 表明在同一层(同一个栈),否则在不同层(不同栈)。同层的元素相同可被忽略,不同层的元素相同不可被忽略
#回溯
39.组合总和
我们的回溯会把当前元素和后面的元素所有可能都尝试一遍,而组合不强调顺序性,这就是为什么组合中其后的元素没有必要往前看
#回溯
17.电话号码的字母组合
在完成《77.组合》基础上,这道题你要会两个技能,分别是建立映射关系(通常是数组)和单个数字字符转换为对应的整数(ch - '0')
#回溯
218.组合III
在完成《77.组合》基础上,这道题无外乎增加一个额外的条件,即需要 path 中数的总和为 n,其中限制元素个数为 k
#回溯
77.组合
组合不在意顺序,因此 [1,4] 和 [4,1] 属于同一个路径,不能同时加入到总路径中,只能取其一。为了方便,按照有序进行排布会容易做题,在代码中也是通过 i + 1 传递 到 backtrace 中作为 start 参数,表示遍历路径的起始位置
#回溯
8. 字符串转换整数 (atoi)
如果再给我一次做此题的机会,绝对不想再碰。逻辑上要考虑的太多,以至于容易逻辑混乱,但真要说此题的技巧,那一定是及时阻止无效数字的转换,即检测到超过范围就到处理返回值的阶段了。
#字符串
66.加一
这道题容易让人误解,应该把题意讲得清楚些。有一个自然数,被拆分成个位数存储在数组中,对这个自然数进行加 1 操作。很明显,如果我们的自然是99,那么加 1 的结果就是 100,显然原数组是存储不下的,因为vector容器不支持头部插入元素
#数组
26.删除有序数组中的重复项
双指针法,right 用于指向更新值的下标,left 用于比较是否重复
#数组
1
2
3
4
5
我
们
应
该
坚
守
正
确
的
道
路
,
而
不
是
看
似
正
确
的
道
路
,
可
有
太
多
不
深
思
的
人
误
入
歧
途
了
朋友
个人原创作品集
爱编程的大丙
清和
祈星海
太傅博客
今今今生
保罗的小宇宙
笨鸟教程
draveness
incredibuild
Tangly的学习笔记
KashiwaのBlog
deepin
鸟窝
陈树义的博客
文件转换免费网站
yihui
wpfx网盘分享
ArthurChiao's Blog
得物技术
火龙果
计算机技术学习笔记
kaito
筱晶IT知识库
wuli.wiki
skynet教程
分享Java+MySQL+Redis教程
libhv网络库教程
C++后端开发进阶教程
申请友链
账号
xiaoyangst
联系
| 由
Hexo
及
致远
驱动