9 个版本
0.2.0 | 2020 年 11 月 21 日 |
---|---|
0.1.7 | 2020 年 8 月 11 日 |
#1891 in 数据结构
每月 32 次下载
2MB
60K SLoC
Leetcode Rust 解决方案

该项目演示了如何使用编程语言 Rust 创建 数据结构 并实现 算法。这里所有的解决方案都是精心制作的,它们的性能优于 LeetCode 网站上 99% 的其他解决方案。稍后会增加教程视频。
请订阅我们的 Rust Gym YouTube 频道 以获取未来视频。
数据结构
- 栈 & 队列 ( Vec, VecDeque )
- 链表 ( Option<Box> )
- 哈希表 ( HashMap, HashSet )
- 树表 ( BTreeMap, BTreeSet )
- 二叉搜索树 ( Option<Rc<RefCell>> )
- 二叉堆 & 优先队列 ( BinaryHeap )
- 图 ( Vec<Vec> )
- 并查集 ( UnionFind )
- 字典树 ( Trie )
算法
- 位操作 & 数字
- 排序的稳定性
- 堆排序
- 二分查找
- 第 k 小元素
- 排列
- 子集
- BFS 图
- DFS 图
- Dijkstra 算法
- 树遍历
- BFS
- DFS
- 中序
- 先序
- 后序
- 拓扑排序
- 检测无向图中的循环
- 检测有向图中的循环
- 计算图中的连通分量数量
- 找到图中的强连通分量
编码面试
LeetCode是一个让人们(主要是软件工程师)练习编程技能的网站。这里有1200+个问题(且数量持续增长),每个问题都有多个解决方案。问题根据难度等级排序:简单、中等和困难。在过去十年左右的时间里,技术面试过程变得程式化和一些工程师认为的“不自然”。在面试中要求人们做什么——解决基于单词或代码的谜题、在白板上编程,以及在短时间内产出干净优化的解决方案——并不是他们在日常工作中会经历到的。
所有解决方案
简单 7/376 1.86%
中等 29/804 3.61%
难度119/330 36.06%
id | 330个难题 | 标签 | 211个解决方案 |
---|---|---|---|
440 | 字典序中第K小的元素 | ||
798 | 最高分数的最小旋转 | ||
154 | 旋转排序数组II中的最小值 | 数组 二分搜索 | |
644 | 最大平均子数组II | 数组 二分搜索 | |
1157 | 子数组中的在线多数元素 | 数组 二分搜索 段树 | |
782 | 转换为棋盘 | 数组数学 | |
891 | 子序列宽度之和 | 数组数学 | |
1330 | 反转子数组以最大化数组值 | 数组数学 | |
1499 | 方程的最大值 | 数组 滑动窗口 | |
308 | 2D可变范围求和查询 | 二叉索引树 段树 | |
1649 | 通过指令创建排序数组 | 二分索引树 段树 有序映射 | |
793 | 阶乘零函数的前像大小 | 二分查找 | |
1095 | 在山脉数组中查找 | 二分查找 | |
327 | 范围和计数 | 二分搜索 分治 排序 二分索引树 段树 | |
1293 | 网格中带有障碍物消除的最短路径 | 广度优先搜索 | |
1345 | 跳跃游戏IV | 广度优先搜索 | |
913 | 猫和老鼠 | 广度优先搜索 极小极大 | |
489 | 机器人房间清洁器 | 深度优先搜索 | |
749 | 包含病毒 | 深度优先搜索 | |
839 | 类似字符串组 | 深度优先搜索并查集图 | |
928 | 最小化恶意软件传播II | 深度优先搜索并查集图 | |
903 | 有效的DI序列排列 | 分治 动态规划 | |
466 | 计数重复 | 动态规划 | |
600 | 无连续1的非负整数 | 动态规划 | |
629 | 第K逆序数组 | 动态规划 | |
639 | 解码方式II | 动态规划 | |
656 | 硬币路径 | 动态规划 | |
741 | 樱桃采摘 | 动态规划 | |
879 | 盈利方案 | 动态规划 | |
920 | 音乐播放列表的数量 | 动态规划 | |
940 | 不同的字典序子序列II | 动态规划 | |
943 | 找到最短超字符串 | 动态规划 | |
956 | 最高的广告牌 | 动态规划 | |
1000 | 合并石头的最低成本 | 动态规划 | |
1187 | 使数组严格递增 | 动态规划 | |
1246 | 回文移除 | 动态规划 | |
1269 | 步骤后保持同一位置的数字数量 | 动态规划 | |
1301 | 具有最大得分的路径数量 | 动态规划 | |
1349 | 参加考试的最大学生数 | 动态规划 | |
1388 | 3n个切片的披萨 | 动态规划 | |
1397 | 找到所有好字符串 | 动态规划 | |
1416 | 恢复数组 | 动态规划 | |
1425 | 约束子序列和 | 动态规划 | |
1458 | 两个子序列的最大点积 | 动态规划 | |
1483 | 树的节点K个祖先 | 动态规划 | |
1601 | 最大可达传输请求数量 | 动态规划 | |
1639 | 给定字典生成目标字符串的方法数 | 动态规划 | |
691 | 拼写单词的贴纸 | 动态规划 回溯 | |
1655 | 分配重复整数 | 动态规划 回溯 | |
1373 | 二叉树中最大和BST | 动态规划 二叉搜索树 | |
1125 | 最小的足够团队 | 动态规划 位运算 | |
1434 | 相互戴不同帽子的方法数 | 动态规划 位运算 | |
664 | 奇怪的打印机 | 动态规划深度优先搜索 | |
975 | 奇偶跳跃 | 动态规划 栈 有序映射 | |
968 | 二叉树摄像头 | 动态规划 树 深度优先搜索 | |
587 | 建立栅栏 | 几何学 | |
1453 | 圆形飞镖盘内的最大飞镖数量 | 几何学 | |
1153 | 字符串转换为另一个字符串 | 图 | |
1494 | 并行课程II | 图 | |
757 | 至少有两个交集的集合 | 贪心算法 | |
1354 | 通过多次求和构建目标数组 | 贪心算法 | |
1505 | 最多进行K次相邻数字交换后的最小可能整数 | 贪心算法 | |
1591 | 奇怪的打印机II | 贪心算法 | |
995 | 最小K连续位翻转数 | 贪婪 滑动窗口 | |
1632 | 矩阵秩变换 | 贪心并查集 | |
1001 | 网格照明 | 散列表 | |
1224 | 最大等频率 | 散列表 | |
710 | 随机选择带黑名单 | 哈希表 二分查找 排序 随机 | |
1178 | 每个谜题的有效单词数量 | 哈希表位运算 | |
711 | 第二类不同岛屿的数量 | 哈希表深度优先搜索 | |
857 | 雇佣K名工人的最低成本 | 堆 | |
882 | 细分图中的可达节点 | 堆 | |
864 | 获取所有钥匙的最短路径 | 堆 广度优先搜索 | |
759 | 员工空闲时间 | 堆 贪心算法 | |
335 | 自交叉 | 数学 | |
805 | 按相同平均数拆分数组 | 数学 | |
810 | 粉笔板XOR游戏 | 数学 | |
906 | 超级回文数 | 数学 | |
972 | 相等的有理数 | 数学 | |
1088 | 混淆数II | 数学 回溯 | |
1307 | 文字算术谜题 | 数学 回溯 | |
1467 | 两个盒子具有相同数量的不同球数的概率 | 数学 回溯 | |
996 | 完全平方数组数量 | 数学 回溯 图 | |
483 | 最小良好基数 | 数学二分查找 | |
878 | N次魔法数 | 数学二分查找 | |
887 | 超级鸡蛋掉落 | 数学 二分查找 动态规划 | |
927 | 三个相等的部分 | 数学 二分查找 贪心 | |
1622 | 花哨序列 | 数学 设计 | |
902 | 给定数字集合中最多N个数字 | 数学 动态规划 | |
964 | 表示数字的最少操作数 | 数学 动态规划 | |
1012 | 有重复数字的数字 | 数学 动态规划 | |
1067 | 范围内的数字计数 | 数学 动态规划 | |
1199 | 构建块的最短时间 | 数学 动态规划 | |
1363 | 最大的三的倍数 | 数学 动态规划 | |
952 | 具有公共因子的最大组件大小 | 数学 并查集 | |
843 | 猜词游戏 | 最小-最大 | |
1606 | 处理最多请求数的服务器 | 有序映射 | |
850 | 矩形面积II | 线段树 线段扫描 | |
699 | 下落方块 | 线段树 有序映射 | |
715 | 范围模块 | 线段树 有序映射 | |
158 | 给定Read4 II读取N个字符 - 调用多次 | 字符串 | |
736 | 解析Lisp表达式 | 字符串 | |
1392 | 最长快乐前缀 | 字符串 | |
730 | 不同的回文子序列数 | 字符串动态规划 | |
1449 | 用加起来等于目标的数字形成最大的整数 | 字符串动态规划 | |
1531 | 字符串压缩II | 字符串动态规划 | |
936 | 盖章序列 | 贪婪字符串 | |
1316 | 不同的回声子字符串 | 字符串 滚动哈希 | |
591 | 标签验证器 | 字符串栈 | |
1163 | 字典序中最后的子字符串 | 字符串 后缀数组 | |
1597 | 从中缀表达式构建二叉表达式树 | 字符串树 | |
428 | 序列化和反序列化N叉树 | 树 | |
431 | 将N叉树编码为二叉树 | 树 | |
1516 | 移动N叉树的子树 | 树 | |
834 | 树中距离之和 | 树 深度优先搜索 | |
685 | 冗余连接II | 树 深度优先搜索 并查集 图 | |
745 | 前缀和后缀搜索 | 前缀树 | |
1610 | 可见点的最大数量 | 双指针 几何 | |
803 | 击中时砖块下落 | 并查集 | |
1028 | 从前序遍历恢复树 | 树 深度优先搜索 | 解决方案 |
1032 | 字符流 | 前缀树 | 解决方案 |
1036 | 逃离大迷宫 | 广度优先搜索 | 解决方案 |
1044 | 最长重复子字符串 | 哈希表二分搜索 | 解决方案 |
1063 | 有效子数组的数量 | 栈 | 解决方案 |
1074 | 目标和为目标的子矩阵数量 | 数组 动态规划 滑动窗口 | 解决方案 |
1092 | 最短公共超序列 | 动态规划 | 解决方案 |
1096 | 括号展开II | 字符串 | 解决方案 |
10 | 正则表达式匹配 | 字符串 动态规划 回溯 | 解决方案 |
1106 | 解析布尔表达式 | 字符串 | 解决方案 |
1121 | 将数组划分为递增序列 | 数学 | 解决方案 |
1136 | 并行课程 | 动态规划 深度优先搜索 图 | 解决方案 |
1147 | 最长的块状回文分解 | 动态规划 滚动哈希 | 解决方案 |
115 | 不同的子序列 | 字符串动态规划 | 解决方案 |
1168 | 优化村庄的供水 | 并查集图 | 解决方案 |
1172 | 餐盘堆叠 | 设计 | 解决方案 |
1183 | 最大数位 | 数学排序 | 解决方案 |
1192 | 网络中的关键连接 | 深度优先搜索 | 解决方案 |
1203 | 按组尊重依赖关系排序项目 | 深度优先搜索 图 拓扑排序 | 解决方案 |
1206 | 设计跳表 | 设计 | 解决方案 |
1210 | 最小旋转次数到达目标 | 广度优先搜索 | 解决方案 |
1216 | 有效的回文III | 字符串动态规划 | 解决方案 |
1220 | 元音排列数 | 动态规划 | 解决方案 |
1231 | 分巧克力 | 二分搜索贪婪算法 | 解决方案 |
1235 | 作业调度中的最大利润 | 二分查找 动态规划 排序 | 解决方案 |
123 | 买卖股票的最佳时机III | 数组 动态规划 | 解决方案 |
1240 | 用最少的正方形拼贴矩形 | 动态规划 回溯 | 解决方案 |
124 | 二叉树最大路径和 | 树 深度优先搜索 | 解决方案 |
1250 | 检查是否为好数组 | 数学 | 解决方案 |
1255 | 用字母形成最大分数的单词 | 位运算 | 解决方案 |
1259 | 不交叉的握手 | 数学 动态规划 | 解决方案 |
1263 | 将盒子移动到目标位置的最小移动次数 | 广度优先搜索 | 解决方案 |
126 | 单词梯II | 数组 字符串 回溯 广度优先搜索 | 解决方案 |
1274 | 矩形中的船数 | 分而治之 | 解决方案 |
1278 | 回文划分III | 动态规划 | 解决方案 |
1284 | 将二进制矩阵转换为零矩阵所需的最少翻转数 | 广度优先搜索 | 解决方案 |
1289 | 最小下落路径和II | 动态规划 | 解决方案 |
128 | 最长连续序列 | 数组并查集 | 解决方案 |
1298 | 从盒子中获取的最大糖果数 | 广度优先搜索 | 解决方案 |
1312 | 使字符串成为回文的最小插入步骤 | 动态规划 | 解决方案 |
1320 | 使用两只手指输入单词的最小距离 | 动态规划 | 解决方案 |
1326 | 浇水花园所需的最小水龙头开启次数 | 动态规划 贪心 | 解决方案 |
132 | 回文划分II | 动态规划 | 解决方案 |
1335 | 工作排程的最小难度 | 动态规划 | 解决方案 |
1340 | 跳转游戏V | 动态规划 | 解决方案 |
1359 | 计算所有有效取货和送货选项的计数 | 数学 动态规划 | 解决方案 |
135 | 糖果 | 贪心算法 | 解决方案 |
1368 | 在网格中至少形成一条有效路径的最小成本 | 广度优先搜索 | 解决方案 |
1377 | 经过T秒后的青蛙位置 | 深度优先搜索 | 解决方案 |
1383 | 团队的最大性能 | 贪婪排序 | 解决方案 |
1402 | 减少菜肴 | 动态规划 | 解决方案 |
1406 | 石游戏III | 动态规划 | 解决方案 |
140 | 单词拆分II | 动态规划 回溯 | 解决方案 |
1411 | N×3网格的着色方法数 | 动态规划 | 解决方案 |
1420 | 构建数组以便可以找到精确的K次比较 | 动态规划 | 解决方案 |
1439 | 找到具有排序行的矩阵的第K个最小和 | 堆 | 解决方案 |
1444 | 切割披萨的方法数 | 动态规划 | 解决方案 |
1463 | 樱桃采摘II | 动态规划 | 解决方案 |
1473 | 油漆房屋III | 动态规划 | 解决方案 |
1478 | 分配邮箱 | 数学 动态规划 | 解决方案 |
1489 | 在最小生成树中找到关键和伪关键边 | 深度优先搜索 并查集 | 解决方案 |
149 | 直线上的最大点数 | 哈希表数学 | 解决方案 |
1510 | 石游戏IV | 动态规划 | 解决方案 |
1515 | 服务中心的最佳位置 | 几何学 | 解决方案 |
1520 | 非重叠子字符串的最大数量 | 贪心算法 | 解决方案 |
1521 | 找到最接近目标的最神秘函数值 | 二分搜索位操作段树 | 解决方案 |
1526 | 对子数组进行最小增量以形成目标数组的最小次数 | 段树 | 解决方案 |
1537 | 获得最高分 | 动态规划 | 解决方案 |
1542 | 查找最长惊人的子字符串 | 字符串位操作 | 解决方案 |
1547 | 切割木棍的最小成本 | 动态规划 | 解决方案 |
1548 | 图中最相似路径 | 动态规划图 | 解决方案 |
1553 | 吃N个橙子的最小天数 | 动态规划 | 解决方案 |
1559 | 在2D网格中检测循环 | 深度优先搜索 | 解决方案 |
1563 | 石游戏V | 动态规划 | 解决方案 |
1568 | 断开岛屿的最小天数 | 贪心算法 | 解决方案 |
1569 | 重新排序数组以获得相同二叉搜索树的方案数 | 动态规划 | 解决方案 |
1575 | 计算所有可能的路线 | 动态规划 | 解决方案 |
1579 | 移除最大数量的边以保持图完全可遍历 | 并查集 | 解决方案 |
1585 | 检查字符串是否可以通过子字符串排序操作进行转换 | 贪婪字符串 | 解决方案 |
1595 | 连接两组点的最小成本 | 动态规划图 | 解决方案 |
1611 | 将整数转换为最小位操作 | 动态规划 位运算 | 解决方案 |
1617 | 计算具有城市间最大距离的子树的数量 | 回溯 | 解决方案 |
1627 | 具有阈值的图连通性 | 数学 并查集 | 解决方案 |
1643 | K个最小指令 | 动态规划 | 解决方案 |
164 | 最大差距 | 排序 | 解决方案 |
1659 | 最大化网格幸福感 | 动态规划 回溯 | 解决方案 |
174 | 地牢游戏 | 二分搜索 动态规划 | 解决方案 |
188 | 买卖股票的最佳时机IV | 动态规划 | 解决方案 |
212 | 单词搜索II | 回溯 trie | 解决方案 |
214 | 最短回文 | 字符串 | 解决方案 |
218 | 天际线问题 | 分而治之堆二分索引树段树线扫描 | 解决方案 |
224 | 基本计算器 | 数学堆栈 | 解决方案 |
233 | 数字1的个数 | 数学 | 解决方案 |
239 | 滑动窗口最大值 | 堆滑动窗口 | 解决方案 |
23 | 合并K个有序列表 | 链表分而治之堆 | 解决方案 |
248 | 斯图罗哥米亚数III | 数学 递归 | 解决方案 |
25 | 反转k组节点 | 链表 | 解决方案 |
265 | 油漆房屋II | 动态规划 | 解决方案 |
269 | 外星语字典 | 图 顶点排序 | 解决方案 |
272 | 最接近的二叉搜索树值II | 栈 树 | 解决方案 |
273 | 整数到英文单词 | 数学 字符串 | 解决方案 |
282 | 加法运算符表达式 | 分而治之 | 解决方案 |
291 | 单词模式II | 回溯 | 解决方案 |
295 | 从数据流中找到中位数 | 堆设计 | 解决方案 |
296 | 最佳会议点 | 数学排序 | 解决方案 |
297 | 序列化和反序列化二叉树 | 树设计 | 解决方案 |
301 | 移除无效括号 | 深度优先搜索 广度优先搜索 | 解决方案 |
302 | 包含黑色像素的最小矩形 | 二分查找 | 解决方案 |
305 | 岛屿II的数量 | 并查集 | 解决方案 |
30 | 所有单词的子字符串连接 | 哈希表双指针字符串 | 解决方案 |
312 | 爆破气球 | 分治 动态规划 | 解决方案 |
315 | 小于当前数字的数的个数 | 二分搜索 分治 排序 二分索引树 段树 | 解决方案 |
317 | 所有建筑物的最短距离 | 广度优先搜索 | 解决方案 |
321 | 创建最大数 | 动态规划 贪心 | 解决方案 |
329 | 矩阵中的最长递增路径 | 深度优先搜索拓扑排序记忆化 | 解决方案 |
32 | 最长有效括号 | 字符串动态规划 | 解决方案 |
330 | 修补数组 | 贪心算法 | 解决方案 |
336 | 回文对 | 哈希表字符串trie | 解决方案 |
340 | 最多K个不同字符的最长子字符串 | 哈希表字符串滑动窗口 | 解决方案 |
352 | 数据流作为不连接的区间 | 二分搜索有序映射 | 解决方案 |
354 | 俄罗斯套娃信封 | 二分搜索 动态规划 | 解决方案 |
358 | 重新排列字符串以保持k距离 | 哈希表堆贪婪 | 解决方案 |
363 | 最大矩形和不超过K | 二分搜索动态规划队列 | 解决方案 |
37 | 数独求解器 | 哈希表回溯 | 解决方案 |
381 | 插入 删除 获取随机 O(1) - 允许重复 | 数组 散列表 设计 | 解决方案 |
391 | 完美矩形 | 线扫描 | 解决方案 |
403 | 青蛙跳 | 动态规划 | 解决方案 |
407 | 雨水陷阱 II | 堆 广度优先搜索 | 解决方案 |
410 | 分割数组最大和 | 二分搜索 动态规划 | 解决方案 |
411 | 最小唯一词缩写 | 回溯位操作 | 解决方案 |
41 | 第一个缺失的正数 | 数组 | 解决方案 |
420 | 强密码检查器 | 解决方案 | |
425 | 单词平方 | 回溯 trie | 解决方案 |
42 | 雨水陷阱 | 数组 双指针 栈 | 解决方案 |
432 | 所有 O`one 数据结构 | 设计 | 解决方案 |
446 | 算术切片 II - 子序列 | 动态规划 | 解决方案 |
44 | 通配符匹配 | 字符串 动态规划 回溯 贪心 | 解决方案 |
458 | 穷困猪 | 数学 | 解决方案 |
45 | 跳跃游戏 II | 数组贪婪 | 解决方案 |
460 | LFU 缓存 | 设计 | 解决方案 |
465 | 最佳账户平衡 | 解决方案 | |
471 | 用最短长度编码字符串 | 动态规划 | 解决方案 |
472 | 连接单词 | 动态规划 深度优先搜索 字典树 | 解决方案 |
479 | 最大的回文乘积 | 解决方案 | |
480 | 滑动窗口中位数 | 滑动窗口 | 解决方案 |
488 | 祖玛游戏 | 深度优先搜索 | 解决方案 |
493 | 反转对 | 二分搜索 分治 排序 二分索引树 段树 | 解决方案 |
499 | 迷宫 III | 深度优先搜索 广度优先搜索 | 解决方案 |
4 | 两个有序数组的中间值 | 数组 二分搜索 分而治之 | 解决方案 |
502 | 首次公开募股 | 堆 贪心算法 | 解决方案 |
514 | 自由之路 | 分而治之 动态规划 深度优先搜索 | 解决方案 |
517 | 超级洗衣机 | 数学 动态规划 | 解决方案 |
51 | N 皇后 | 回溯 | 解决方案 |
527 | 单词缩写 | 字符串排序 | 解决方案 |
52 | N 皇后 II | 回溯 | 解决方案 |
546 | 移除盒子 | 动态规划深度优先搜索 | 解决方案 |
552 | 学生出勤记录 II | 动态规划 | 解决方案 |
564 | 找到最近的回文数 | 字符串 | 解决方案 |
568 | 最大假期天数 | 动态规划 | 解决方案 |
588 | 设计内存文件系统 | 设计 | 解决方案 |
60 | 排列序列 | 数学 回溯 | 解决方案 |
630 | 课程表 III | 贪心算法 | 解决方案 |
631 | 设计 Excel 求和公式 | 设计 | 解决方案 |
632 | 覆盖 K 个列表元素的最小范围 | 哈希表双指针字符串 | 解决方案 |
642 | 设计搜索自动补全系统 | 设计前缀树 | 解决方案 |
65 | 有效数字 | 数学 字符串 | 解决方案 |
660 | 移除 9 | 数学 | 解决方案 |
668 | 乘法表中第 K 小的数 | 二分查找 | 解决方案 |
675 | 为高尔夫赛事砍伐树木 | 广度优先搜索 | 解决方案 |
679 | 24 点游戏 | 深度优先搜索 | 解决方案 |
683 | K 个空槽 | 有序映射 | 解决方案 |
689 | 三个非重叠子数组的最大和 | 数组 动态规划 | 解决方案 |
68 | 文本对齐 | 字符串 | 解决方案 |
719 | 找到第 K 小的成对距离 | 数组 二分搜索 堆 | 解决方案 |
726 | 原子数 | 哈希表 栈 递归 | 解决方案 |
727 | 最小窗口子序列 | 动态规划 滑动窗口 | 解决方案 |
72 | 编辑距离 | 字符串动态规划 | 解决方案 |
732 | 我的日历 III | 线段树 有序映射 | 解决方案 |
753 | 破解保险箱 | 数学 深度优先搜索 | 解决方案 |
761 | 特殊二进制字符串 | 字符串递归 | 解决方案 |
765 | 拉手情侣 | 贪心 并查集 图 | 解决方案 |
768 | 使排序的块最大化的最小操作数 | 数组 | 解决方案 |
76 | 最小窗口子字符串 | 哈希表 双指针 字符串 滑动窗口 | 解决方案 |
770 | 基本计算器 IV | 哈希表 字符串 栈 | 解决方案 |
772 | 基本计算器 III | 字符串栈 | 解决方案 |
773 | 滑动拼图 | 广度优先搜索 | 解决方案 |
774 | 最小化加油站的最大距离 | 二分查找 | 解决方案 |
778 | 在上升的水中游泳 | 二分搜索 堆 深度优先搜索 并查集 | 解决方案 |
780 | 达到点 | 数学 | 解决方案 |
786 | K 最小的素数分数 | 二分查找 堆 | 解决方案 |
815 | 公交车路线 | 广度优先搜索 | 解决方案 |
818 | 赛车 | 动态规划 堆 | 解决方案 |
827 | 创建大岛屿 | 深度优先搜索 | 解决方案 |
828 | 计算给定字符串所有子字符串的唯一字符数 | 双指针 | 解决方案 |
829 | 连续数之和 | 数学 | 解决方案 |
847 | 访问所有节点的最短路径 | 动态规划 广度优先搜索 | 解决方案 |
84 | 直方图中的最大矩形 | 数组栈 | 解决方案 |
854 | K 相似字符串 | 广度优先搜索图 | 解决方案 |
85 | 最大矩形 | 数组 哈希表 动态规划 栈 | 解决方案 |
862 | 和至少为 K 的最短子数组 | 二分搜索 队列 | 解决方案 |
871 | 最小加注站数 | 动态规划 堆 | 解决方案 |
87 | 乱序字符串 | 字符串动态规划 | 解决方案 |
895 | 最大频率栈 | 哈希表栈 | 解决方案 |
899 | 有序队列 | 数学 字符串 | 解决方案 |
924 | 最小化恶意软件传播 | 深度优先搜索 并查集 | 解决方案 |
960 | 删除列以使排序 III | 动态规划 | 解决方案 |
97 | 交错字符串 | 字符串动态规划 | 解决方案 |
980 | 独特路径 III | 回溯 深度优先搜索 | 解决方案 |
982 | 位与为零的三元组 | 动态规划 | 解决方案 |
992 | 有 K 个不同整数的子数组 | 哈希表 双指针 滑动窗口 | 解决方案 |
99 | 恢复二叉搜索树 | 树 深度优先搜索 | 解决方案 |
依赖关系
~0.8–1.2MB
~17K SLoC