LeetCode 题解大全

190 阅读23分钟

项目说明

LeetCode 系列题解致力于帮助程序员更好地理解和掌握算法思维,内容包含详细的解题思路分析、图文并茂的示例讲解和完整的代码实现。

GitHub LeetCode 最全题解:持续更新中,欢迎 Star ⭐️ 关注,一起探讨算法之美。

(超出掘金文章字数限制,全部题解请看:github.com/LjyYano/Lee…

LeetCode 题解(非会员题目)

题号题解代码标签难度
1两数之和L0001数组 哈希表简单
2两数相加L0002链表 数学中等
3无重复字符的最长子串L0003字符串 哈希表 滑动窗口中等
4寻找两个正序数组的中位数L0004数组 二分查找 分治困难
5最长回文子串L0005字符串 动态规划中等
6Z 字形变换L0006字符串中等
7整数反转L0007数学中等
8字符串转换整数 (atoi)L0008字符串中等
9回文数L0009数学简单
10正则表达式匹配L0010字符串 动态规划 递归困难
11盛最多水的容器L0011数组 双指针中等
12整数转罗马数字L0012数学 字符串中等
13罗马数字转整数L0013数学 字符串简单
14最长公共前缀L0014字符串简单
15三数之和L0015数组 双指针中等
16最接近的三数之和L0016数组 双指针 排序中等
17电话号码的字母组合L0017字符串 回溯中等
18四数之和L0018数组 双指针 排序中等
19删除链表的倒数第 N 个结点L0019链表 双指针中等
20有效的括号L0020字符串 简单
21合并两个有序链表L0021链表简单
22括号生成L0022字符串 回溯中等
23合并 K 个升序链表L0023链表 分治 困难
24两两交换链表中的节点L0024链表中等
25K 个一组翻转链表L0025链表困难
26删除有序数组中的重复项L0026数组 双指针简单
27移除元素L0027数组 双指针简单
28实现 strStr()L0028字符串 双指针简单
29两数相除L0029位运算 数学中等
30串联所有单词的子串L0030字符串 哈希表 滑动窗口困难
31下一个排列L0031数组 双指针中等
32最长有效括号L0032字符串 动态规划 困难
33搜索旋转排序数组L0033数组 二分查找中等
34在排序数组中查找元素的第一个和最后一个位置L0034数组 二分查找中等
35搜索插入位置L0035数组 二分查找简单
36有效的数独L0036数组 哈希表中等
37解数独L0037数组 回溯困难
38外观数列L0038字符串中等
39组合总和L0039数组 回溯中等
40组合总和 IIL0040数组 回溯中等
41缺失的第一个正数L0041数组 哈希表困难
42接雨水L0042 数组 双指针困难
43字符串相乘L0043数学 字符串中等
44通配符匹配L0044贪心 字符串 动态规划困难
45跳跃游戏 IIL0045数组 贪心中等
46全排列L0046数组 回溯中等
47全排列 IIL0047数组 回溯中等
48旋转图像L0048数组 数学 矩阵中等
49字母异位词分组L0049数组 哈希表 字符串中等
50Pow(x, n)L0050递归 数学中等
51N 皇后L0051数组 回溯困难
52N 皇后 IIL0052回溯困难
53最大子数组和L0053数组 分治 动态规划中等
54螺旋矩阵L0054数组 矩阵 模拟中等
55跳跃游戏L0055贪心 数组 动态规划中等
56合并区间L0056数组 排序中等
57插入区间L0057数组中等
58最后一个单词的长度L0058字符串简单
59螺旋矩阵 IIL0059数组 矩阵 模拟中等
60排列序列L0060数学 回溯困难
61旋转链表L0061链表 双指针中等
62不同路径L0062数学 动态规划 组合数学中等
63不同路径 IIL0063数组 动态规划中等
64最小路径和L0064数组 动态规划中等
65有效数字L0065字符串困难
66加一L0066数组 数学简单
67二进制求和L0067位运算 数学 字符串简单
68文本左右对齐L0068字符串 模拟困难
69x 的平方根L0069数学 二分查找简单
70爬楼梯L0070记忆化搜索 数学 动态规划简单
71简化路径L0071 字符串中等
72编辑距离L0072字符串 动态规划困难
73矩阵置零L0073数组 哈希表 矩阵中等
74搜索二维矩阵L0074数组 二分查找 矩阵中等
75颜色分类L0075数组 双指针 排序中等
76最小覆盖子串L0076哈希表 字符串 滑动窗口困难
77组合L0077回溯中等
78子集L0078位运算 数组 回溯中等
79单词搜索L0079数组 回溯 矩阵中等
80删除有序数组中的重复项 IIL0080数组 双指针中等
81搜索旋转排序数组 IIL0081数组 二分查找中等
82删除排序链表中的重复元素 IIL0082链表 双指针中等
83删除排序链表中的重复元素L0083链表简单
84柱状图中最大的矩形L0084 数组 单调栈困难
85最大矩形L0085 数组 动态规划 矩阵困难
86分隔链表L0086链表 双指针中等
87扰乱字符串L0087字符串 动态规划困难
88合并两个有序数组L0088数组 双指针 排序简单
89格雷编码L0089位运算 数学 回溯中等
90子集 IIL0090位运算 数组 回溯中等
91解码方法L0091字符串 动态规划中等
92反转链表 IIL0092链表中等
93复原 IP 地址L0093字符串 回溯中等
94二叉树的中序遍历L0094 深度优先搜索简单
95不同的二叉搜索树 IIL0095 二叉搜索树 动态规划中等
96不同的二叉搜索树L0096 二叉搜索树 数学 动态规划中等
97交错字符串L0097字符串 动态规划中等
98验证二叉搜索树L0098 深度优先搜索 二叉搜索树中等
99恢复二叉搜索树L0099 深度优先搜索 二叉搜索树中等
100相同的树L0100 深度优先搜索 广度优先搜索简单
101对称二叉树L0101 深度优先搜索 广度优先搜索简单
102二叉树的层序遍历L0102 广度优先搜索 二叉树中等
103二叉树的锯齿形层序遍历L0103 广度优先搜索 二叉树中等
104二叉树的最大深度L0104 深度优先搜索 广度优先搜索简单
105从前序与中序遍历序列构造二叉树L0105 数组 哈希表 分治 二叉树中等
106从中序与后序遍历序列构造二叉树L0106 数组 哈希表 分治 二叉树中等
107二叉树的层序遍历 IIL0107 广度优先搜索 二叉树中等
108将有序数组转换为二叉搜索树L0108 二叉搜索树 数组 分治 二叉树简单
109有序链表转换二叉搜索树L0109 二叉搜索树 链表 分治 二叉树中等
110平衡二叉树L0110 深度优先搜索 二叉树简单
111二叉树的最小深度L0111 深度优先搜索 广度优先搜索简单
112路径总和L0112 深度优先搜索 二叉树简单
113路径总和 IIL0113 深度优先搜索 回溯 二叉树中等
114二叉树展开为链表L0114 链表 深度优先搜索 二叉树中等
115不同的子序列L0115字符串 动态规划困难
116填充每个节点的下一个右侧节点指针L0116 深度优先搜索 广度优先搜索 链表 二叉树中等
117填充每个节点的下一个右侧节点指针 IIL0117 深度优先搜索 广度优先搜索 链表 二叉树中等
118杨辉三角L0118数组 动态规划简单
119杨辉三角 IIL0119数组 动态规划简单
120三角形最小路径和L0120数组 动态规划中等
121买卖股票的最佳时机L0121数组 动态规划简单
122买卖股票的最佳时机 IIL0122数组 贪心算法中等
123买卖股票的最佳时机 IIIL0123数组 动态规划困难
124二叉树中的最大路径和L0124 深度优先搜索 动态规划困难
125验证回文串L0125双指针 字符串简单
126单词接龙 IIL0126广度优先搜索 哈希表 字符串困难
127单词接龙L0127广度优先搜索 哈希表 字符串困难
128最长连续序列L0128并查集 数组 哈希表中等
129求根节点到叶节点数字之和L0129 深度优先搜索中等
130被围绕的区域L0130深度优先搜索 广度优先搜索 并查集中等
131分割回文串L0131回溯算法 动态规划中等
132分割回文串 IIL0132动态规划 字符串困难
133克隆图L0133深度优先搜索 广度优先搜索 中等
134加油站L0134贪心算法中等
135分发糖果L0135贪心算法困难
136只出现一次的数字L0136位运算 哈希表简单
137只出现一次的数字 IIL0137位运算中等
138复制带随机指针的链表L0138哈希表 链表中等
139单词拆分L0139动态规划 字典树中等
140单词拆分 IIL0140回溯算法 动态规划困难
141环形链表L0141哈希表 链表 双指针简单
142环形链表 IIL0142哈希表 链表 双指针中等
143重排链表L0143链表 双指针中等
144二叉树的前序遍历L0144 中等
145二叉树的后序遍历L0145 困难
146LRU缓存机制L0146设计 哈希表 链表困难
147对链表进行插入排序L0147链表 排序中等
148排序链表L0148链表 双指针 分治 排序 归并排序中等
149直线上最多的点数L0149哈希表 数学困难
150逆波兰表达式求值L0150中等
151翻转字符串里的单词L0151字符串中等
152乘积最大子数组L0152数组 动态规划中等
153寻找旋转排序数组中的最小值L0153数组 二分查找中等
154寻找旋转排序数组中的最小值 IIL0154数组 二分查找困难
155最小栈L0155 设计简单
160相交链表L0160链表 双指针简单
162寻找峰值L0162数组 二分查找中等
164最大间距L0164排序 桶排序困难
165比较版本号L0165字符串中等
166分数到小数L0166哈希表 数学 字符串中等
167两数之和 II - 输入有序数组L0167数组 双指针 二分查找简单
168Excel表列名称L0168数学 字符串简单
169多数元素L0169数组 哈希表 分治 计数 排序简单
171Excel表列序号L0171数学 字符串简单
172阶乘后的零L0172数学简单
173二叉搜索树迭代器L0173 设计中等
174地下城游戏L0174数组 动态规划 矩阵困难
175组合两个表L0175JOIN操作 数据库简单
176第二高的薪水L0176子查询 聚合函数简单
177第N高的薪水L0177窗口函数 自定义函数中等
178分数排名L0178窗口函数 排序中等
179最大数L0179排序 贪心 字符串中等
180连续出现的数字L0180自连接 连续问题中等
181超过经理收入的员工L0181自连接 比较查询简单
182查找重复的电子邮箱L0182分组统计 HAVING子句简单
183从不订购的客户L0183左连接 NULL判断简单
184部门工资最高的员工L0184子查询 IN操作符中等
185部门工资前三高的所有员工L0185子查询 关联比较困难
187重复的DNA序列L0187哈希表 位运算 滑动窗口中等
188买卖股票的最佳时机 IVL0188动态规划困难
189轮转数组L0189数组 数学中等
190颠倒二进制位L0190位运算简单
191位1的个数L0191位运算简单
192统计词频L0192文本处理 统计中等
193有效电话号码L0193正则表达式简单
194转置文件L0194文本处理 转置中等
195第十行L0195Shell简单
196删除重复的电子邮箱L0196自连接删除 重复处理简单
197上升的温度L0197日期函数 自连接简单
198部门工资中位数L0198窗口函数 中位数计算中等
199最近的订单L0199子查询 分组聚合简单
200第N高的工资L0200窗口函数 自定义函数中等

其他项目

coding 笔记、点滴记录,希望大家关注 ^_^