LeetCode 题解大全
项目说明
LeetCode 系列题解致力于帮助程序员更好地理解和掌握算法思维,内容包含详细的解题思路分析、图文并茂的示例讲解和完整的代码实现。
 LeetCode 最全题解:持续更新中,欢迎 Star ️ 关注,一起探讨算法之美。
 LeetCode 最全题解:持续更新中,欢迎 Star ️ 关注,一起探讨算法之美。
LeetCode 题解(非会员题目)
| 题号 | 题解 | 代码 | 标签 | 难度 | 
|---|---|---|---|---|
| 1 | 两数之和 | L0001 | 数组哈希表 | 简单 | 
| 2 | 两数相加 | L0002 | 链表数学 | 中等 | 
| 3 | 无重复字符的最长子串 | L0003 | 字符串哈希表滑动窗口 | 中等 | 
| 4 | 寻找两个正序数组的中位数 | L0004 | 数组二分查找分治 | 困难 | 
| 5 | 最长回文子串 | L0005 | 字符串动态规划 | 中等 | 
| 6 | Z 字形变换 | 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 | 链表 | 中等 | 
| 25 | K 个一组翻转链表 | 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 | 组合总和 II | L0040 | 数组回溯 | 中等 | 
| 41 | 缺失的第一个正数 | L0041 | 数组哈希表 | 困难 | 
| 42 | 接雨水 | L0042 | 栈数组双指针 | 困难 | 
| 43 | 字符串相乘 | L0043 | 数学字符串 | 中等 | 
| 44 | 通配符匹配 | L0044 | 贪心字符串动态规划 | 困难 | 
| 45 | 跳跃游戏 II | L0045 | 数组贪心 | 中等 | 
| 46 | 全排列 | L0046 | 数组回溯 | 中等 | 
| 47 | 全排列 II | L0047 | 数组回溯 | 中等 | 
| 48 | 旋转图像 | L0048 | 数组数学矩阵 | 中等 | 
| 49 | 字母异位词分组 | L0049 | 数组哈希表字符串 | 中等 | 
| 50 | Pow(x, n) | L0050 | 递归数学 | 中等 | 
| 51 | N 皇后 | L0051 | 数组回溯 | 困难 | 
| 52 | N 皇后 II | L0052 | 回溯 | 困难 | 
| 53 | 最大子数组和 | L0053 | 数组分治动态规划 | 中等 | 
| 54 | 螺旋矩阵 | L0054 | 数组矩阵模拟 | 中等 | 
| 55 | 跳跃游戏 | L0055 | 贪心数组动态规划 | 中等 | 
| 56 | 合并区间 | L0056 | 数组排序 | 中等 | 
| 57 | 插入区间 | L0057 | 数组 | 中等 | 
| 58 | 最后一个单词的长度 | L0058 | 字符串 | 简单 | 
| 59 | 螺旋矩阵 II | L0059 | 数组矩阵模拟 | 中等 | 
| 60 | 排列序列 | L0060 | 数学回溯 | 困难 | 
| 61 | 旋转链表 | L0061 | 链表双指针 | 中等 | 
| 62 | 不同路径 | L0062 | 数学动态规划组合数学 | 中等 | 
| 63 | 不同路径 II | L0063 | 数组动态规划 | 中等 | 
| 64 | 最小路径和 | L0064 | 数组动态规划 | 中等 | 
| 65 | 有效数字 | L0065 | 字符串 | 困难 | 
| 66 | 加一 | L0066 | 数组数学 | 简单 | 
| 67 | 二进制求和 | L0067 | 位运算数学字符串 | 简单 | 
| 68 | 文本左右对齐 | L0068 | 字符串模拟 | 困难 | 
| 69 | x 的平方根 | L0069 | 数学二分查找 | 简单 | 
| 70 | 爬楼梯 | L0070 | 记忆化搜索数学动态规划 | 简单 | 
| 71 | 简化路径 | L0071 | 栈字符串 | 中等 | 
| 72 | 编辑距离 | L0072 | 字符串动态规划 | 困难 | 
| 73 | 矩阵置零 | L0073 | 数组哈希表矩阵 | 中等 | 
| 74 | 搜索二维矩阵 | L0074 | 数组二分查找矩阵 | 中等 | 
| 75 | 颜色分类 | L0075 | 数组双指针排序 | 中等 | 
| 76 | 最小覆盖子串 | L0076 | 哈希表字符串滑动窗口 | 困难 | 
| 77 | 组合 | L0077 | 回溯 | 中等 | 
| 78 | 子集 | L0078 | 位运算数组回溯 | 中等 | 
| 79 | 单词搜索 | L0079 | 数组回溯矩阵 | 中等 | 
| 80 | 删除有序数组中的重复项 II | L0080 | 数组双指针 | 中等 | 
| 81 | 搜索旋转排序数组 II | L0081 | 数组二分查找 | 中等 | 
| 82 | 删除排序链表中的重复元素 II | L0082 | 链表双指针 | 中等 | 
| 83 | 删除排序链表中的重复元素 | L0083 | 链表 | 简单 | 
| 84 | 柱状图中最大的矩形 | L0084 | 栈数组单调栈 | 困难 | 
| 85 | 最大矩形 | L0085 | 栈数组动态规划矩阵 | 困难 | 
| 86 | 分隔链表 | L0086 | 链表双指针 | 中等 | 
| 87 | 扰乱字符串 | L0087 | 字符串动态规划 | 困难 | 
| 88 | 合并两个有序数组 | L0088 | 数组双指针排序 | 简单 | 
| 89 | 格雷编码 | L0089 | 位运算数学回溯 | 中等 | 
| 90 | 子集 II | L0090 | 位运算数组回溯 | 中等 | 
| 91 | 解码方法 | L0091 | 字符串动态规划 | 中等 | 
| 92 | 反转链表 II | L0092 | 链表 | 中等 | 
| 93 | 复原 IP 地址 | L0093 | 字符串回溯 | 中等 | 
| 94 | 二叉树的中序遍历 | L0094 | 栈树深度优先搜索 | 简单 | 
| 95 | 不同的二叉搜索树 II | L0095 | 树二叉搜索树动态规划 | 中等 | 
| 96 | 不同的二叉搜索树 | L0096 | 树二叉搜索树数学动态规划 | 中等 | 
| 97 | 交错字符串 | L0097 | 字符串动态规划 | 中等 | 
| 98 | 验证二叉搜索树 | L0098 | 树深度优先搜索二叉搜索树 | 中等 | 
| 99 | 恢复二叉搜索树 | L0099 | 树深度优先搜索二叉搜索树 | 中等 | 
| 100 | 相同的树 | L0100 | 树深度优先搜索广度优先搜索 | 简单 | 
| 101 | 对称二叉树 | L0101 | 树深度优先搜索广度优先搜索 | 简单 | 
| 102 | 二叉树的层序遍历 | L0102 | 树广度优先搜索二叉树 | 中等 | 
| 103 | 二叉树的锯齿形层序遍历 | L0103 | 树广度优先搜索二叉树 | 中等 | 
| 104 | 二叉树的最大深度 | L0104 | 树深度优先搜索广度优先搜索 | 简单 | 
| 105 | 从前序与中序遍历序列构造二叉树 | L0105 | 树数组哈希表分治二叉树 | 中等 | 
| 106 | 从中序与后序遍历序列构造二叉树 | L0106 | 树数组哈希表分治二叉树 | 中等 | 
| 107 | 二叉树的层序遍历 II | L0107 | 树广度优先搜索二叉树 | 中等 | 
| 108 | 将有序数组转换为二叉搜索树 | L0108 | 树二叉搜索树数组分治二叉树 | 简单 | 
| 109 | 有序链表转换二叉搜索树 | L0109 | 树二叉搜索树链表分治二叉树 | 中等 | 
| 110 | 平衡二叉树 | L0110 | 树深度优先搜索二叉树 | 简单 | 
| 111 | 二叉树的最小深度 | L0111 | 树深度优先搜索广度优先搜索 | 简单 | 
| 112 | 路径总和 | L0112 | 树深度优先搜索二叉树 | 简单 | 
| 113 | 路径总和 II | L0113 | 树深度优先搜索回溯二叉树 | 中等 | 
| 114 | 二叉树展开为链表 | L0114 | 树栈链表深度优先搜索二叉树 | 中等 | 
| 115 | 不同的子序列 | L0115 | 字符串动态规划 | 困难 | 
| 116 | 填充每个节点的下一个右侧节点指针 | L0116 | 树深度优先搜索广度优先搜索链表二叉树 | 中等 | 
| 117 | 填充每个节点的下一个右侧节点指针 II | L0117 | 树深度优先搜索广度优先搜索链表二叉树 | 中等 | 
| 118 | 杨辉三角 | L0118 | 数组动态规划 | 简单 | 
| 119 | 杨辉三角 II | L0119 | 数组动态规划 | 简单 | 
| 120 | 三角形最小路径和 | L0120 | 数组动态规划 | 中等 | 
| 121 | 买卖股票的最佳时机 | L0121 | 数组动态规划 | 简单 | 
| 122 | 买卖股票的最佳时机 II | L0122 | 数组贪心算法 | 中等 | 
| 123 | 买卖股票的最佳时机 III | L0123 | 数组动态规划 | 困难 | 
| 124 | 二叉树中的最大路径和 | L0124 | 树深度优先搜索动态规划 | 困难 | 
| 125 | 验证回文串 | L0125 | 双指针字符串 | 简单 | 
| 126 | 单词接龙 II | L0126 | 广度优先搜索哈希表字符串 | 困难 | 
| 127 | 单词接龙 | L0127 | 广度优先搜索哈希表字符串 | 困难 | 
| 128 | 最长连续序列 | L0128 | 并查集数组哈希表 | 中等 | 
| 129 | 求根节点到叶节点数字之和 | L0129 | 树深度优先搜索 | 中等 | 
| 130 | 被围绕的区域 | L0130 | 深度优先搜索广度优先搜索并查集 | 中等 | 
| 131 | 分割回文串 | L0131 | 回溯算法动态规划 | 中等 | 
| 132 | 分割回文串 II | L0132 | 动态规划字符串 | 困难 | 
| 133 | 克隆图 | L0133 | 深度优先搜索广度优先搜索图 | 中等 | 
| 134 | 加油站 | L0134 | 贪心算法 | 中等 | 
| 135 | 分发糖果 | L0135 | 贪心算法 | 困难 | 
| 136 | 只出现一次的数字 | L0136 | 位运算哈希表 | 简单 | 
| 137 | 只出现一次的数字 II | L0137 | 位运算 | 中等 | 
| 138 | 复制带随机指针的链表 | L0138 | 哈希表链表 | 中等 | 
| 139 | 单词拆分 | L0139 | 动态规划字典树 | 中等 | 
| 140 | 单词拆分 II | L0140 | 回溯算法动态规划 | 困难 | 
| 141 | 环形链表 | L0141 | 哈希表链表双指针 | 简单 | 
| 142 | 环形链表 II | L0142 | 哈希表链表双指针 | 中等 | 
| 143 | 重排链表 | L0143 | 链表双指针 | 中等 | 
| 144 | 二叉树的前序遍历 | L0144 | 栈树 | 中等 | 
| 145 | 二叉树的后序遍历 | L0145 | 栈树 | 困难 | 
| 146 | LRU缓存机制 | L0146 | 设计哈希表链表 | 困难 | 
| 147 | 对链表进行插入排序 | L0147 | 链表排序 | 中等 | 
| 148 | 排序链表 | L0148 | 链表双指针分治排序归并排序 | 中等 | 
| 149 | 直线上最多的点数 | L0149 | 哈希表数学 | 困难 | 
| 150 | 逆波兰表达式求值 | L0150 | 栈 | 中等 | 
| 151 | 翻转字符串里的单词 | L0151 | 字符串 | 中等 | 
| 152 | 乘积最大子数组 | L0152 | 数组动态规划 | 中等 | 
| 153 | 寻找旋转排序数组中的最小值 | L0153 | 数组二分查找 | 中等 | 
| 154 | 寻找旋转排序数组中的最小值 II | L0154 | 数组二分查找 | 困难 | 
| 155 | 最小栈 | L0155 | 栈设计 | 简单 | 
| 160 | 相交链表 | L0160 | 链表双指针 | 简单 | 
| 162 | 寻找峰值 | L0162 | 数组二分查找 | 中等 | 
| 164 | 最大间距 | L0164 | 排序桶排序 | 困难 | 
| 165 | 比较版本号 | L0165 | 字符串 | 中等 | 
| 166 | 分数到小数 | L0166 | 哈希表数学字符串 | 中等 | 
| 167 | 两数之和 II - 输入有序数组 | L0167 | 数组双指针二分查找 | 简单 | 
| 168 | Excel表列名称 | L0168 | 数学字符串 | 简单 | 
| 169 | 多数元素 | L0169 | 数组哈希表分治计数排序 | 简单 | 
| 171 | Excel表列序号 | L0171 | 数学字符串 | 简单 | 
| 172 | 阶乘后的零 | L0172 | 数学 | 简单 | 
| 173 | 二叉搜索树迭代器 | L0173 | 栈树设计 | 中等 | 
| 174 | 地下城游戏 | L0174 | 数组动态规划矩阵 | 困难 | 
| 175 | 组合两个表 | L0175 | JOIN操作数据库 | 简单 | 
| 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 | 买卖股票的最佳时机 IV | L0188 | 动态规划 | 困难 | 
| 189 | 轮转数组 | L0189 | 数组数学 | 中等 | 
| 190 | 颠倒二进制位 | L0190 | 位运算 | 简单 | 
| 191 | 位1的个数 | L0191 | 位运算 | 简单 | 
| 192 | 统计词频 | L0192 | 文本处理统计 | 中等 | 
| 193 | 有效电话号码 | L0193 | 正则表达式 | 简单 | 
| 194 | 转置文件 | L0194 | 文本处理转置 | 中等 | 
| 195 | 第十行 | L0195 | Shell | 简单 | 
| 196 | 删除重复的电子邮箱 | L0196 | 自连接删除重复处理 | 简单 | 
| 197 | 上升的温度 | L0197 | 日期函数自连接 | 简单 | 
| 198 | 部门工资中位数 | L0198 | 窗口函数中位数计算 | 中等 | 
| 199 | 最近的订单 | L0199 | 子查询分组聚合 | 简单 | 
| 200 | 第N高的工资 | L0200 | 窗口函数自定义函数 | 中等 | 
| 201 | 学生和考试 | L0201 | JOIN操作条件过滤 | 简单 | 
| 202 | 用户购买模式 | L0202 | 存在性检查日期函数 | 中等 | 
| 203 | 移除链表元素 | L0203 | 链表 | 简单 | 
| 204 | 计数质数 | L0204 | 哈希表数学 | 中等 | 
| 205 | 同构字符串 | L0205 | 哈希表 | 简单 | 
| 206 | 反转链表 | L0206 | 链表 | 简单 | 
| 207 | 课程表 | L0207 | 深度优先搜索广度优先搜索图拓扑排序 | 中等 | 
| 208 | 实现 Trie (前缀树) | L0208 | 设计字典树 | 中等 | 
| 209 | 长度最小的子数组 | L0209 | 数组双指针滑动窗口 | 中等 | 
| 210 | 课程表 II | L0210 | 深度优先搜索广度优先搜索图拓扑排序 | 中等 | 
| 211 | 添加与搜索单词 - 数据结构设计 | L0211 | 设计字典树回溯算法 | 中等 | 
| 212 | 单词搜索 II | L0212 | 字典树回溯算法 | 困难 | 
| 213 | 打家劫舍 II | L0213 | 动态规划 | 中等 | 
| 214 | 最短回文串 | L0214 | 字符串 | 困难 | 
| 215 | 数组中的第K个最大元素 | L0215 | 堆分治算法 | 中等 | 
| 216 | 组合总和 III | L0216 | 数组回溯算法 | 中等 | 
| 217 | 存在重复元素 | L0217 | 数组哈希表 | 简单 | 
| 218 | 天际线问题 | L0218 | 堆分治算法 | 困难 | 
| 219 | 存在重复元素 II | L0219 | 数组哈希表 | 简单 | 
| 220 | 存在重复元素 III | L0220 | 排序Ordered Map | 中等 | 
| 221 | 最大正方形 | L0221 | 动态规划 | 中等 | 
| 222 | 完全二叉树的节点个数 | L0222 | 树二分查找 | 中等 | 
| 223 | 矩形面积 | L0223 | 数学 | 中等 | 
| 224 | 基本计算器 | L0224 | 栈数学 | 困难 | 
| 225 | 用队列实现栈 | L0225 | 设计队列 | 简单 | 
| 226 | 翻转二叉树 | L0226 | 树 | 简单 | 
| 227 | 基本计算器 II | L0227 | 栈数学 | 中等 | 
| 228 | 汇总区间 | L0228 | 数组 | 简单 | 
| 229 | 求众数 II | L0229 | 数组 | 中等 | 
| 230 | 二叉搜索树中第K小的元素 | L0230 | 树二分查找 | 中等 | 
| 231 | 2的幂 | L0231 | 位运算 | 简单 | 
| 232 | 用栈实现队列 | L0232 | 设计栈 | 简单 | 
| 233 | 数字 1 的个数 | L0233 | 数学 | 困难 | 
| 234 | 回文链表 | L0234 | 链表双指针 | 简单 | 
| 235 | 二叉搜索树的最近公共祖先 | L0235 | 树 | 简单 | 
| 236 | 二叉树的最近公共祖先 | L0236 | 树 | 中等 | 
| 237 | 删除链表中的节点 | L0237 | 链表 | 简单 | 
| 238 | 除自身以外数组的乘积 | L0238 | 数组 | 中等 | 
| 239 | 滑动窗口最大值 | L0239 | 堆滑动窗口 | 困难 | 
| 240 | 搜索二维矩阵 II | L0240 | 二分查找 | 中等 | 
| 241 | 为运算表达式设计优先级 | L0241 | 分治算法 | 中等 | 
| 242 | 有效的字母异位词 | L0242 | 哈希表 | 简单 | 
| 257 | 二叉树的所有路径 | L0257 | 树深度优先搜索 | 简单 | 
| 258 | 各位相加 | L0258 | 数学 | 简单 | 
| 260 | 只出现一次的数字 III | L0260 | 位运算 | 中等 | 
| 263 | 丑数 | L0263 | 数学 | 简单 | 
| 264 | 丑数 II | L0264 | 堆数学 | 中等 | 
| 268 | 丢失的数字 | L0268 | 位运算数学 | 简单 | 
| 274 | H 指数 | L0274 | 排序 | 中等 | 
| 275 | H 指数 II | L0275 | 二分查找 | 中等 | 
| 278 | 第一个错误的版本 | L0278 | 二分查找 | 简单 | 
| 279 | 完全平方数 | L0279 | 动态规划数学 | 中等 | 
| 280 | 摆动排序 | L0280 | 排序数组 | 中等 | 
| 281 | 锯齿迭代器 | L0281 | 设计队列 | 中等 | 
| 282 | 给表达式添加运算符 | L0282 | 深度优先搜索字符串 | 困难 | 
| 283 | 移动零 | L0283 | 数组双指针 | 简单 | 
| 284 | 顶端迭代器 | L0284 | 设计迭代器 | 中等 | 
| 285 | 二叉搜索树中的顺序后继 | L0285 | 树二叉搜索树 | 中等 | 
| 286 | 墙与门 | L0286 | 广度优先搜索 | 中等 | 
| 287 | 寻找重复数 | L0287 | 数组双指针 | 中等 | 
| 289 | 生命游戏 | L0289 | 数组矩阵 | 中等 | 
| 290 | 单词规律 | L0290 | 哈希表字符串 | 简单 | 
| 292 | Nim 游戏 | L0292 | 数学博弈论 | 简单 | 
| 295 | 数据流的中位数 | L0295 | 堆设计 | 困难 | 
| 297 | 二叉树的序列化与反序列化 | L0297 | 树深度优先搜索 | 困难 | 
| 299 | 猜数字游戏 | L0299 | 哈希表字符串 | 中等 | 
| 300 | 最长递增子序列 | L0300 | 动态规划二分查找 | 中等 | 
| 301 | 删除无效的括号 | L0301 | 深度优先搜索广度优先搜索 | 困难 | 
| 303 | 区域和检索 - 数组不可变 | L0303 | 设计前缀和 | 简单 | 
| 304 | 二维区域和检索 - 矩阵不可变 | L0304 | 设计矩阵 | 中等 | 
| 306 | 累加数 | L0306 | 字符串回溯 | 中等 | 
| 307 | 区域和检索 - 数组可修改 | L0307 | 设计树状数组 | 中等 | 
| 310 | 最小高度树 | L0310 | 广度优先搜索拓扑排序 | 中等 | 
| 312 | 戳气球 | L0312 | 动态规划分治 | 困难 | 
| 315 | 计算右侧小于当前元素的个数 | L0315 | 树状数组线段树 | 困难 | 
| 316 | 去除重复字母 | L0316 | 栈贪心 | 中等 | 
| 318 | 最大单词长度乘积 | L0318 | 位运算哈希表 | 中等 | 
| 319 | 灯泡开关 | L0319 | 数学脑筋急转弯 | 中等 | 
| 322 | 零钱兑换 | L0322 | 动态规划广度优先搜索 | 中等 | 
| 324 | 摆动排序 II | L0324 | 排序数组 | 中等 | 
| 326 | 3 的幂 | L0326 | 数学递归 | 简单 | 
| 328 | 奇偶链表 | L0328 | 链表双指针 | 中等 | 
| 329 | 矩阵中的最长递增路径 | L0329 | 深度优先搜索拓扑排序 | 困难 | 
| 330 | 按要求补齐数组 | L0330 | 贪心数组 | 困难 | 
| 331 | 验证二叉树的前序序列化 | L0331 | 栈树 | 中等 | 
| 332 | 重新安排行程 | L0332 | 深度优先搜索图 | 中等 | 
| 334 | 递增的三元子序列 | L0334 | 贪心数组 | 中等 | 
| 337 | 打家劫舍 III | L0337 | 树动态规划 | 中等 | 
| 338 | 比特位计数 | L0338 | 位运算动态规划 | 简单 | 
| 341 | 扁平化嵌套列表迭代器 | L0341 | 设计栈 | 中等 | 
| 342 | 4的幂 | L0342 | 位运算数学 | 简单 | 
| 344 | 反转字符串 | L0344 | 双指针字符串 | 简单 | 
| 345 | 反转字符串中的元音字母 | L0345 | 双指针字符串 | 简单 | 
| 347 | 前 K 个高频元素 | L0347 | 堆哈希表 | 中等 | 
| 349 | 两个数组的交集 | L0349 | 哈希表双指针 | 简单 | 
| 350 | 两个数组的交集 II | L0350 | 哈希表双指针 | 简单 | 
| 352 | 将数据流变为多个不相交区间 | L0352 | 设计有序集合 | 困难 | 
| 354 | 俄罗斯套娃信封问题 | L0354 | 动态规划二分查找 | 困难 | 
| 355 | 设计推特 | L0355 | 设计哈希表 | 中等 | 
| 357 | 计算各个位数不同的数字个数 | L0357 | 数学动态规划 | 中等 | 
| 363 | 矩形区域不超过 K 的最大数值和 | L0363 | 队列二分查找 | 困难 | 
| 365 | 水壶问题 | L0365 | 数学广度优先搜索 | 中等 | 
| 367 | 有效的完全平方数 | L0367 | 数学二分查找 | 简单 | 
| 368 | 最大整除子集 | L0368 | 动态规划数学 | 中等 | 
| 371 | 两整数之和 | L0371 | 位运算数学 | 中等 | 
| 372 | 超级次方 | L0372 | 数学分治 | 中等 | 
| 373 | 查找和最小的K对数字 | L0373 | 堆数组 | 中等 | 
| 376 | 摆动序列 | L0376 | 贪心动态规划 | 中等 | 
| 377 | 组合总和 Ⅳ | L0377 | 动态规划回溯 | 中等 | 
| 378 | 有序矩阵中第 K 小的元素 | L0378 | 堆二分查找 | 中等 | 
| 380 | O(1) 时间插入、删除和获取随机元素 | L0380 | 设计哈希表 | 中等 | 
| 382 | 链表随机节点 | L0382 | 蓄水池抽样链表 | 中等 | 
| 384 | 打乱数组 | L0384 | 设计随机化 | 中等 | 
| 385 | 迷你语法分析器 | L0385 | 栈字符串 | 中等 | 
| 387 | 字符串中的第一个唯一字符 | L0387 | 哈希表字符串 | 简单 | 
| 389 | 找不同 | L0389 | 位运算哈希表 | 简单 | 
| 392 | 判断子序列 | L0392 | 双指针字符串 | 简单 | 
| 393 | UTF-8 编码验证 | L0393 | 位运算数组 | 中等 | 
| 394 | 字符串解码 | L0394 | 栈递归 | 中等 | 
| 395 | 至少有 K 个重复字符的最长子串 | L0395 | 分治滑动窗口 | 中等 | 
| 396 | 旋转函数 | L0396 | 数学动态规划 | 中等 | 
| 399 | 除法求值 | L0399 | 并查集图 | 中等 | 
| 400 | 第 N 位数字 | L0400 | 数学二分查找 | 中等 | 
| 401 | 二进制手表 | L0401 | 位运算回溯 | 简单 | 
| 402 | 移掉 K 位数字 | L0402 | 栈贪心 | 中等 | 
| 403 | 青蛙过河 | L0403 | 动态规划哈希表 | 困难 | 
| 404 | 左叶子之和 | L0404 | 树深度优先搜索 | 简单 | 
| 406 | 根据身高重建队列 | L0406 | 贪心排序 | 中等 | 
| 407 | 接雨水 II | L0407 | 堆广度优先搜索 | 困难 | 
| 409 | 最长回文串 | L0409 | 哈希表字符串 | 简单 | 
| 410 | 分割数组的最大值 | L0410 | 二分查找动态规划 | 困难 | 
| 412 | Fizz Buzz | L0412 | 数学字符串 | 简单 | 
| 413 | 等差数列划分 | L0413 | 数组动态规划 | 中等 | 
| 414 | 第三大的数 | L0414 | 数组排序 | 简单 | 
| 415 | 字符串相加 | L0415 | 字符串数学 | 简单 | 
| 416 | 分割等和子集 | L0416 | 动态规划背包问题 | 中等 | 
| 417 | 太平洋大西洋水流问题 | L0417 | 深度优先搜索广度优先搜索 | 中等 | 
| 419 | 甲板上的战舰 | L0419 | 数组矩阵 | 中等 | 
| 421 | 数组中两个数的最大异或值 | L0421 | 位运算字典树 | 中等 | 
| 424 | 替换后的最长重复字符 | L0424 | 滑动窗口双指针 | 中等 | 
| 429 | N 叉树的层序遍历 | L0429 | 树广度优先搜索 | 中等 | 
| 430 | 扁平化多级双向链表 | L0430 | 链表深度优先搜索 | 中等 | 
| 432 | 全 O(1) 的数据结构 | L0432 | 设计哈希表 | 困难 | 
| 433 | 最小基因变化 | L0433 | 广度优先搜索哈希表 | 中等 | 
| 435 | 无重叠区间 | L0435 | 贪心动态规划 | 中等 | 
| 436 | 寻找右区间 | L0436 | 二分查找排序 | 中等 | 
| 437 | 路径总和 III | L0437 | 树前缀和 | 中等 | 
| 438 | 找到字符串中所有字母异位词 | L0438 | 滑动窗口哈希表 | 中等 | 
| 440 | 字典序的第K小数字 | L0440 | 字典树数学 | 困难 | 
| 441 | 排列硬币 | L0441 | 数学二分查找 | 简单 | 
| 442 | 数组中重复的数据 | L0442 | 数组原地哈希 | 中等 | 
| 443 | 压缩字符串 | L0443 | 双指针字符串 | 中等 | 
| 445 | 两数相加 II | L0445 | 栈链表 | 中等 | 
| 448 | 找到所有数组中消失的数字 | L0448 | 数组原地哈希 | 简单 | 
| 449 | 序列化和反序列化二叉搜索树 | L0449 | 树设计 | 中等 | 
| 450 | 删除二叉搜索树中的节点 | L0450 | 树二叉搜索树 | 中等 | 
| 452 | 用最少数量的箭引爆气球 | L0452 | 贪心排序 | 中等 | 
| 453 | 最小操作次数使数组元素相等 | L0453 | 数学数组 | 简单 | 
| 454 | 四数相加 II | L0454 | 哈希表分组统计 | 中等 | 
| 455 | 分发饼干 | L0455 | 贪心排序 | 简单 | 
| 456 | 132 模式 | L0456 | 栈数组 | 中等 | 
| 457 | 环形数组是否存在循环 | L0457 | 快慢指针数组 | 中等 | 
| 458 | 可怜的小猪 | L0458 | 数学组合数学 | 困难 | 
| 459 | 重复的子字符串 | L0459 | 字符串KMP算法 | 简单 | 
| 460 | LFU 缓存 | L0460 | 设计哈希表 | 困难 | 
| 461 | 汉明距离 | L0461 | 位运算数学 | 简单 | 
| 462 | 最少移动次数使数组元素相等 II | L0462 | 数学排序 | 中等 | 
| 463 | 岛屿的周长 | L0463 | 数组矩阵 | 简单 | 
| 464 | 我能赢吗 | L0464 | 记忆化搜索位运算 | 中等 | 
| 466 | 统计重复个数 | L0466 | 字符串动态规划 | 困难 | 
| 467 | 环绕字符串中唯一的子字符串 | L0467 | 动态规划字符串 | 中等 | 
| 468 | 验证IP地址 | L0468 | 字符串正则表达式 | 中等 | 
| 470 | 用 Rand7() 实现 Rand10() | L0470 | 数学拒绝采样 | 中等 | 
| 472 | 连接词 | L0472 | 字典树动态规划 | 困难 | 
| 473 | 火柴拼正方形 | L0473 | 回溯位运算 | 中等 | 
| 474 | 一和零 | L0474 | 动态规划背包问题 | 中等 | 
| 475 | 供暖器 | L0475 | 二分查找排序 | 中等 | 
其他项目
coding 笔记、点滴记录,希望大家关注 ^_^
LeetCode 题解大全的更多相关文章
- 【LeetCode题解】二叉树的遍历
		我准备开始一个新系列[LeetCode题解],用来记录刷LeetCode题,顺便复习一下数据结构与算法. 1. 二叉树 二叉树(binary tree)是一种极为普遍的数据结构,树的每一个节点最多只有 ... 
- leetcode题解-122买卖股票的最佳时期
		题目 leetcode题解-122.买卖股票的最佳时机:https://www.yanbinghu.com/2019/03/14/30893.html 题目详情 给定一个数组,它的第 i 个元素是一支 ... 
- 【LeetCode题解】3_无重复字符的最长子串(Longest-Substring-Without-Repeating-Characters)
		目录 描述 解法一:暴力枚举法(Time Limit Exceeded) 思路 Java 实现 Python 实现 复杂度分析 解法二:滑动窗口(双指针) 思路 Java 实现 Python 实现 复 ... 
- 【LeetCode题解】225_用队列实现栈(Implement-Stack-using-Queues)
		目录 描述 解法一:双队列,入快出慢 思路 入栈(push) 出栈(pop) 查看栈顶元素(peek) 是否为空(empty) Java 实现 Python 实现 解法二:双队列,入慢出快 思路 入栈 ... 
- 【LeetCode题解】232_用栈实现队列(Implement-Queue-using-Stacks)
		目录 描述 解法一:在一个栈中维持所有元素的出队顺序 思路 入队(push) 出队(pop) 查看队首(peek) 是否为空(empty) Java 实现 Python 实现 解法二:一个栈入,一个栈 ... 
- 【LeetCode题解】844_比较含退格的字符串(Backspace-String-Compare)
		目录 描述 解法一:字符串比较 思路 Java 实现 Python 实现 复杂度分析 解法二:双指针(推荐) 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解笔记可以 ... 
- 【LeetCode题解】25_k个一组翻转链表(Reverse-Nodes-in-k-Group)
		目录 描述 解法一:迭代 思路 Java 实现 Python 实现 复杂度分析 解法二:递归(不满足空间复杂度) 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解笔记 ... 
- 【LeetCode题解】24_两两交换链表中的节点(Swap-Nodes-in-Pairs)
		目录 描述 解法一:迭代 思路 Java 实现 Python 实现 复杂度分析 解法二:递归(不满足空间复杂度要求) 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解 ... 
- 【LeetCode题解】347_前K个高频元素(Top-K-Frequent-Elements)
		目录 描述 解法一:排序算法(不满足时间复杂度要求) Java 实现 Python 实现 复杂度分析 解法二:最小堆 思路 Java 实现 Python 实现 复杂度分析 解法三:桶排序(bucket ... 
- 【LeetCode题解】19_删除链表的倒数第N个节点(Remove-Nth-Node-From-End-of-List)
		目录 描述 解法:双指针 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解笔记可以访问我的 github. 描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回 ... 
随机推荐
- 2024御网杯信息安全大赛个人赛wp_2024-11-27
			MISC题解 题目附件以及工具链接: 通过网盘分享的文件:御网杯附件 链接: https://pan.baidu.com/s/1LNA6Xz6eZodSV0Io9jGSZg 提取码: jay1 --来 ... 
- oracle客户端安装先决条件检查出现PRVF-7531错误
			场景:在局域网内,远程一台客户机进行客户端安装 度娘后,说一般情况下,由于操作系统未开启默认共享,导致Oracle无法检查环境的可用性. 查看server服务正常开启. 通过net share将c进行 ... 
- PM-软件最难的不是开发程序,而是需求
			最近几个月,关于人工智能的惊人文章在互联网泛滥.这也引发了很多人的担心--软件开发人员可能很快就会失业,被人工智能取代.他们想象所有的企业高管和产品研究人员将绕过大多数或所有的软件开发人员,直接要求人 ... 
- Spring Cloud Sleuth in a Monolith Application
			1. Overview In this article, we're introducing Spring Cloud Sleuth – a powerful tool for enhancing ... 
- 【深度剖析】自主可控的全国产方案,基于龙芯LS2K1000LA-i!
			龙芯LS2K1000LA-i产品简介 LS2K1000LA-i是龙芯双核LoongArch LA264自主架构处理器.创龙科技基于LS2K1000LA-i设计的工业核心板(SOM-TL2K1000)板 ... 
- 哪里有 class 告诉我?
			说明 本文中的 JVM 参数和代码在 JDK 8 版本生效. 哪里有用户类? 用户类是由开发者和第三方定义的类,它是由应用程序类加载器加载的. Java 程序可以通过CLASSPATH 环境变量,JV ... 
- yarn : 无法加载文件 C:\Users\duany\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本
			在win10 下安装yarn后,在编辑器中检查yarn的安装的时候会出现: 解决方法 1:搜索powershell,以管理员方式运行powershell2:使用命令更改计算机的执行策略 执行: set ... 
- win7语言栏不见了,只显示搜狗输入法,不显示中文(简体)-美式键盘
			参考百度经验: win7右下角输入法图标不见了[终极方法] 
- IM开发干货分享:万字长文,详解IM“消息“列表卡顿优化实践
			本文由融云技术团队原创分享,原题"万字干货:IM "消息"列表卡顿优化实践",为使文章更好理解,内容有修订. 1.引言 随着移动互联网的普及,无论是IM开发者还 ... 
- 双指针习题:Binary Deque
			14.Binary Deque 题面翻译 Binary Deque - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 有多组数据. 每组数据给出 \(n\) 个数,每个数为 \(0\) ... 
