leetcode刷题笔记

</
题目 思路
1.两数之和 哈希表
2.两数相加 链表操作
3. 无重复字符的最长子串 滑动窗口,特别注意数组越界情况!
4. 寻找两个正序数组的中位数
5.最长回文子串 从中间向两边扩展,注意整个字符串都是回文串的边界情况
10.正则表达式匹配 动态规划,要在两个字符前都加个空格
11.盛水最多的容器 左右双指针
15.三数之和 排序+双指针+剪枝
17.电话号码的字母组合 回溯
19.删除链表的倒数第N个节点 快慢指针
20.有效的括号 栈,注意栈pop前需要判断是否为空
21.合并两个有序链表 双指针
22.括号生成 回溯法,用变量记录能生成的右括号数
23.合并K个升序链表
31.下一个排列 1. 从后向前 查找第一个 相邻升序 的元素对 (i,j),满足 A[i] < A[j]。此时 [j,end) 必然是降序 2.在 [j,end) 从后向前 查找第一个满足 A[i] < A[k] 的 k 3.将 A[i] 与 A[k] 交换 4.可以断定这时 [j,end) 必然是降序,逆置 [j,end),使其升序 5. 如果在步骤 1 找不到符合的相邻元素对,说明当前 [begin,end) 为一个降序顺序,则直接跳到步骤 4
32.最长有效括号
33.搜索旋转排序数组 二分查找,有序的那一半的范围是可以确定的
34.在排序数组中查找元素的第一个和最后一个位置 二分查找
39.组合总和 回溯,先排序数组剪枝
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值