leetcode题目汇总

211 阅读5分钟

01.双指针

01.leetcode-26.删除有序数组中的重复项
02.leetcode-27.移除元素
03.leetcode-283.移动零
04.leetcode-167.两数之和 II - 输入有序数组
05.leetcode-653.两数之和 IV - 输入二叉搜索树
06.leetcode-344.反转字符串
07.leetcode-5.最长回文子串
08.leetcode-42.接雨水
09.leetcode-80.删除有序数组中的重复项 II
10.leetcode-125. 验证回文串
11.leetcode-392. 判断子序列
12.leetcode-15. 三数之和
13.leetcode-88. 合并两个有序数组
14.leetcode-1930.长度为 3 的不同回文子序列

02.数组

01.leetcode-41.缺失的第一个正数
02.leetcode-1636. 按照频率将数组升序排序
03.leetcode-35.搜索插入位置 (二分查找)
04.leetcode-682.棒球比赛
05.LCP-40.心算挑战
06.leetcode-2129.将标题首字母大写
07.leetcode-3128.直角三角形
08.leetcode-73.矩阵置零
09.leetcode-3131.找出与数组相加的整数 I
10.leetcode-3132.找出与数组相加的整数 II
11.leetcode-3151. 特殊数组 I
12.leetcode-128. 最长连续序列
13.leetcode-11. 盛最多水的容器
14.leetcode-3. 无重复字符的最长子串
15.leetcode-560. 和为 K 的子数组(前缀和)
16.leetcode-53. 最大子数组和
17.leetcode-189. 轮转数组
18.leetcode-238. 除自身以外数组的乘积
19.leetcode-41. 缺失的第一个正数
20.leetcode-54. 螺旋矩阵
21.leetcode-48. 旋转图像
22.leetcode-2. 两数相加
23.leetcode-148. 排序链表
24.leetcode-74. 搜索二维矩阵(二分查找)
25.leetcode-34. 在排序数组中查找元素的第一个和最后一个位置(二分查找)
26.leetcode-33. 搜索旋转排序数组(二分查找)
27.leetcode-153.寻找旋转排序数组中的最小值(二分查找)
28.leetcode-2089. 找出数组排序后的目标下标(二分查找)
29.leetcode-1331. 数组序号转换
30.leetcode-162.寻找峰值(二分查找)
31.leetcode-9. 回文数
32.leetcode-66. 加一
33.leetcode-36. 有效的数独
34.leetcode-274. H 指数
35.leetcode-134. 加油站
36.leetcode-135. 分发糖果
37.leetcode-13. 罗马数字转整数
38.leetcode-12. 整数转罗马数字
39.leetcode-58. 最后一个单词的长度
40.leetcode-151. 反转字符串中的单词
41.leetcode-28. 找出字符串中第一个匹配项的下标
42.leetcode-289. 生命游戏
43.leetcode-228. 汇总区间(合并区间)
44.leetcode-56. 合并区间(合并区间)
45.leetcode-57. 插入区间(合并区间)

46.leetcode-1266.访问所有点的最小时间 (数学总结)

03.hash

01.leetcode-1.两数之和
02.leetcode-49.字母异位词分组
03.leetcode-383. 赎金信
04.leetcode-205. 同构字符串
05.leetcode-290. 单词规律
06.leetcode-242. 有效的字母异位词
07.leetcode-202. 快乐数
08.leetcode-219. 存在重复元素 II

04.链表

01.leetcode-206. 反转链表 (反转)
02.leetcode-92. 反转链表 II (反转)
03.leetcode-25. K 个一组翻转链表 (反转)
04.leetcode-234. 回文链表 (反转)
05.leetcode-83.删除排序链表中的重复元素
06.leetcode-82.删除排序链表中的重复元素 II
07.leetcode-876.链表的中间结点 (快慢指针)
08.leetcode-86.分隔链表
09.leetcode-21.合并两个有序链表 (合并链表)
10.leetcode-23.合并K个升序链表 (合并链表)
11.leetcode-19.删除链表的倒数第 N 个结点 (快慢指针)
12.leetcode-160.相交链表 (补全法)
13.leetcode-141.环形链表 (环状链表)
14.leetcode-142.环形链表 II (环状链表)
15.leetcode-24.两两交换链表中的节点 (反转)
16.leetcode-2181. 合并零之间的节点
17.leetcode-817. 链表组件
18.leetcode-2. 两数相加
19.leetcode-61. 旋转链表

05.回溯

回溯模板
01.Leetcode-46.全排列
02.leetcode-39. 组合总和
03.leetcode-216.组合总和 III
04.leetcode-40. 组合总和 II
05.leetcode-47. 全排列 II
06.leetcode-77. 组合
07.leetcode-78. 子集
08.leetcode-90. 子集 II
09.leetcode-22.括号生成
10.leetcode-17. 电话号码的字母组合
11.leetcode-79.单词搜索
12.leetcode-131.分割回文串

06.Tree

树的两种遍历形式:DFS & BFS
01.leetcode-102. 二叉树的层序遍历
02.leetcode-637. 二叉树的层平均值 (层序遍历)
03.leetcode-108. 将有序数组转换为二叉搜索树 (构造树)
04.leetcode-1448. 统计二叉树中好节点的数目
05.leetcode-437. 路径总和 III
06.leetcode-100. 相同的树
07.leetcode-94. 二叉树的中序遍历
08.leetcode-104. 二叉树的最大深度
09.leetcode-226. 翻转二叉树
10.leetcode-101. 对称二叉树
11.leetcode-104. 二叉树的最大深度
12.leetcode-543. 二叉树的直径
13.leetcode-98. 验证二叉搜索树
14.leetcode-230. 二叉搜索树中第 K 小的元素(中序遍历)
15.leetcode-199. 二叉树的右视图(层序遍历)
16.leetcode-114. 二叉树展开为链表(前序遍历)
17.leetcode-105. 从前序与中序遍历序列构造二叉树(构造树)
18.leetcode-437. 路径总和 III(dfs)
19.leetcode-236. 二叉树的最近公共祖先
20.leetcode-124. 二叉树中的最大路径和(dfs)
21.leetcode-106. 从中序与后序遍历序列构造二叉树(构造树)
22.leetcode-117. 填充每个节点的下一个右侧节点指针 II(BFS)
23.leetcode-222. 完全二叉树的节点个数(BFS\stack\计算)
24.leetcode-103. 二叉树的锯齿形层序遍历(BFS)
25.leetcode-530. 二叉搜索树的最小绝对差(中序遍历)

07.DFS/BFS

7-1.岛屿类型题目

01.leetcode-200.岛屿数量
02.leetcode-1254.统计封闭岛屿的数目
03.leetcode-695.岛屿的最大面积
04.leetcode-1905.统计子岛屿
05.leetcode-130. 被围绕的区域

7-2.邻接表

01.leetcode-2101.引爆最多的炸弹
02.leetcode-133. 克隆图 (DFS/BFS)
03.leetcode-207. 课程表
04.leetcode-210. 课程表 II

08.滑动窗口

01.leetcode-239.滑动窗口最大值
02.leetcode-438. 找到字符串中所有字母异位词
03.leetcode-209. 长度最小的子数组

09.贪心算法

01.leetcode-55.跳跃游戏
02.leetcode-45.跳跃游戏 II
03.leetcode-3111.覆盖所有点的最少矩形数目

10.技巧

01.leetcode-2844. 生成特殊数字的最少操作
02.leetcode-3106. 满足距离约束且字典序最小的字符串
03.leetcode-2961. 双模幂运算
04.leetcode-190.颠倒二进制位 (位运算)
05.leetcode-136. 只出现一次的数字 (位运算)
06.leetcode-191. 位1的个数 (位运算)
07.leetcode-137. 只出现一次的数字 II (位运算)
08.leetcode-201. 数字范围按位与 (位运算)
09.leetcode-342. 4的幂 (位运算)
10.leetcode-69. x 的平方根

11.class

01.leetcode-676. 实现一个魔法字典
02.leetcode-146.LRU 缓存

12.动态规划(DP)

01.leetcode-70. 爬楼梯
02.leetcode-198. 打家劫舍
03.leetcode-139. 单词拆分
04.leetcode-300. 最长递增子序列
05.leetcode-322. 零钱兑换
06.leetcode-120. 三角形最小路径和
07.leetcode-64. 最小路径和
08.leetcode-63. 不同路径 II
09.leetcode-221. 最大正方形
10.leetcode-1035. 不相交的线
11.leetcode-72. 编辑距离
12.leetcode-1504. 统计全 1 子矩形

13.stack

01.leetcode-20. 有效的括号
02.leetcode-155. 最小栈
03.leetcode-739. 每日温度
04.leetcode-71. 简化路径
05.leetcode-150. 逆波兰表达式求值
06.leetcode-138. 随机链表的复制

14.买卖股票

01.leetcode-121. 买卖股票的最佳时机(贪心)
02.leetcode-122. 买卖股票的最佳时机 II(贪心)
03.leetcode-123. 买卖股票的最佳时机 III(动态规划)
04.leetcode-188. 买卖股票的最佳时机 IV(动态规划)

15.设计

01.leetcode-380. O(1) 时间插入、删除和获取随机元素