GithubHelp home page GithubHelp logo

heitao5200 / leetcode-py Goto Github PK

View Code? Open in Web Editor NEW

This project forked from itcharge/leetcode-py

0.0 1.0 0.0 3.07 MB

「算法通关手册」,超详细的「算法与数据结构」基础讲解教程,「LeetCode」650+ 道题目 Python 版的详细解析。通过「算法理论学习」和「编程实战练习」相结合的方式,从零基础到彻底掌握算法知识。

Home Page: https://algo.itcharge.cn/

License: MIT License

Python 99.82% Shell 0.18%

leetcode-py's Introduction

算法通关手册(LeetCode)

项目简介

  • 「算法与数据结构」 基础知识的讲解教程,「LeetCode」650+ 道题目的详细解析。本项目易于理解,没有大跨度的思维跳跃,项目中使用部分图示、例子来帮助理解。

  • 本教程先从基础的数据结构和算法开始讲解,再针对不同分类的数据结构和算法,进行具体题目的讲解分析。让读者可以通过「算法基础理论学习」和「编程实战学习」相结合的方式,彻底的掌握算法知识。

  • 本教程采用 Python 作为编程语言,要求学习者已有基本 Python 程序设计的知识与经验。

项目简介

项目地址:

欢迎右上角 「Star ⭐️ 」「Fork」,这是对我最大的鼓励和支持。

支持黑暗模式的在线电子书《算法通关手册》。

关于作者

我是一名 iOS / macOS 的开发程序员,另外也是北航软院的一名非全硕士(在读)。曾在大学期间学习过算法知识,并参加过 3 年的 ACM 比赛, 但水平有限,未能取得理想成绩。但是这 3 年的 ACM 经历,给我最大的收获是锻炼了自己的逻辑思维和解决实际问题的能力,这种能力为我今后的工作、学习打下了坚实的基础。

我从 2021 年 03 月 30 日开始每日在 LeetCode 刷题,到 2021 年 11 月 26 日已经刷了 700+ 道题目,并且完成了 650+ 道题解。努力向着 1000+、1500+、2000+ 道题前进。

在公众号 「程序员充电站」 里回复 "算法打卡",拉你进 LeetCode 算法打卡计划群一起组队打卡。

  • 进群暗号:算法打卡
  • 进群要求:少闲聊、多分享、改备注。

版权说明

内容章节

00. 绪论

01. 数组

02. 链表

03. 堆栈

04. 队列

05. 哈希表

06. 字符串

07. 树

08. 图论

  • 图论基础知识
  • 拓扑排序
  • 欧拉路径
  • 哈密顿路径
  • 生成树
    • 最小生成树
    • 次小生成树
    • 最小树形图
  • 单源最短路
  • 多源最短路径
  • K 短路径
  • 差分约束系统
  • 强连通分量
  • 双联通分量
  • LCA
  • 二分图
  • 网络流

09. 基础算法

LeetCode 题解(已完成 664 道)

题号 标题 题解 标签 难度
0001 两数之和 Python 数组、哈希表 简单
0002 两数相加 Python 递归、链表、数学 中等
0003 无重复字符的最长子串 Python 字符串、哈希表、双指针、字符串、滑动窗口 中等
0004 寻找两个正序数组的中位数 Python 数组、二分查找、分治算法 困难
0005 最长回文子串 Python 字符串、动态规划 中等
0007 整数反转 Python 数学 简单
0008 字符串转换整数 (atoi) Python 数学、字符串 中等
0009 回文数 Python 数学 简单
0011 盛最多水的容器 Python 贪心、数组、双指针 中等
0012 整数转罗马数字 Python 数学、字符串 中等
0013 罗马数字转整数 Python 数学、字符串 简单
0014 最长公共前缀 Python 字符串 简单
0015 三数之和 Python 数组、双指针 中等
0016 最接近的三数之和 Python 数组、双指针、排序 中等
0017 电话号码的字母组合 Python 深度优先搜索、递归、字符串、回溯算法 中等
0018 四数之和 Python 数组、哈希表、双指针 中等
0019 删除链表的倒数第 N 个结点 Python 链表、双指针 中等
0020 有效的括号 Python 栈、字符串 简单
0021 合并两个有序链表 Python 递归、链表 简单
0022 括号生成 Python 字符串、回溯算法 中等
0023 合并K个升序链表 Python 链表、分治、堆(优先队列)、归并排序 困难
0024 两两交换链表中的节点 Python 递归、链表 中等
0026 删除有序数组中的重复项 Python 数组、双指针 简单
0027 移除元素 Python 数组、双指针 简单
0028 实现 strStr() Python 字符串、双指针 简单
0029 两数相除 Python 数学、二分查找 中等
0033 搜索旋转排序数组 Python 数组、二分查找 中等
0034 在排序数组中查找元素的第一个和最后一个位置 Python 数组、二分查找 中等
0035 搜索插入位置 Python 数组、二分查找 简单
0036 有效的数独 Python 哈希表 中等
0037 解数独 Python 数组、回溯、矩阵 困难
0038 外观数列 Python 字符串 简单
0039 组合总和 Python 数组、回溯 中等
0040 组合总和 II Python 数组、回溯 中等
0042 接雨水 Python 栈、数组、双指针、动态规划、单调栈 困难
0043 字符串相乘 Python 数学、字符串、模拟 中等
0045 跳跃游戏 II Python 贪心、数组、动态规划 中等
0046 全排列 Python 回溯算法 中等
0047 全排列 II Python 数组、回溯 中等
0048 旋转图像 Python 数组 中等
0049 字母异位词分组 Python 字符串、哈希表 中等
0050 Pow(x, n) Python 数学、二分查找 中等
0051 N 皇后 Python 数组、回溯 困难
0053 最大子序和 Python 数组、分治算法、动态规划 简单
0054 螺旋矩阵 Python 数组 中等
0055 跳跃游戏 Python 贪心算法、数组、动态规划 中等
0056 合并区间 Python 数组、排序 中等
0058 最后一个单词的长度 Python 字符串 简单
0059 螺旋矩阵 II Python 数组、矩阵、模拟 中等
0061 旋转链表 Python 链表、双指针 中等
0062 不同路径 Python 数组、动态规划 中等
0063 不同路径 II Python 数组、动态规划、矩阵 中等
0066 加一 Python 数组 简单
0067 二进制求和 Python 数学、字符串、位运算 简单
0069 x 的平方根 Python 数学、二分查找 简单
0070 爬楼梯 Python 动态规划 简单
0072 编辑距离 Python 字符串、动态规划 困难
0073 矩阵置零 Python 数组 中等
0075 颜色分类 Python 数组、排序、双指针 中等
0076 最小覆盖子串 Python 哈希表、字符串、滑动窗口 困难
0077 组合 Python 数组、回溯 中等
0078 子集 Python 位运算、数组、回溯算法 中等
0079 单词搜索 Python 数组、回溯算法 中等
0080 删除有序数组中的重复项 II Python 数组、双指针 中等
0081 搜索旋转排序数组 II Python 数组、二分查找 中等
0083 删除排序链表中的重复元素 Python 链表 简单
0084 柱状图中最大的矩形 Python 栈、数组、单调栈 困难
0088 合并两个有序数组 Python 数组、双指针 简单
0089 格雷编码 Python 位运算、数学、回溯 中等
0090 子集 II Python 位运算、数组、回溯 中等
0091 解码方法 Python 字符串、动态规划 中等
0093 复原 IP 地址 Python 字符串、回溯 中等
0094 二叉树的中序遍历 Python 栈、树、哈希表 简单
0095 不同的二叉搜索树 II Python 树、二叉搜索树、动态规划、回溯、二叉树 中等
0096 不同的二叉搜索树 Python 树、二叉搜索树、数学、动态规划、二叉树 中等
0098 验证二叉搜索树 Python 树、深度优先搜索、递归 中等
0100 相同的树 Python 树、深度优先搜索 简单
0101 对称二叉树 Python 树、深度优先搜索、广度优先搜索 简单
0102 二叉树的层序遍历 Python 树、广度优先搜索 中等
0103 二叉树的锯齿形层序遍历 Python 树、广度优先搜索、二叉树 中等
0104 二叉树的最大深度 Python 树、深度优先搜索、递归 简单
0105 从前序与中序遍历序列构造二叉树 Python 树、数组、哈希表、分治、二叉树 中等
0106 从中序与后序遍历序列构造二叉树 Python 树、数组、哈希表、分治、二叉树 中等
0107 二叉树的层序遍历 II Python 树、广度优先搜索 中等
0108 将有序数组转换为二叉搜索树 Python 树、深度优先搜索 简单
0110 平衡二叉树 Python 树、深度优先搜索、递归 简单
0111 二叉树的最小深度 Python 树、深度优先搜索、广度优先搜索 简单
0112 路径总和 Python 树、深度优先搜索 简单
0113 路径总和 II Python 树、深度优先搜索、回溯、二叉树 中等
0115 不同的子序列 Python 字符串、动态规划 困难
0116 填充每个节点的下一个右侧节点指针 Python 树、深度优先搜索、广度优先搜索 中等
0117 填充每个节点的下一个右侧节点指针 II Python 树、深度优先遍历 中等
0118 杨辉三角 Python 数组 简单
0119 杨辉三角 II Python 数组 简单
0121 买卖股票的最佳时机 Python 数组、动态规划 简单
0122 买卖股票的最佳时机 II Python 数组、贪心算法 简单
0123 买卖股票的最佳时机 III Python 数组、动态规划 困难
0124 二叉树中的最大路径和 Python 树、深度优先搜索、动态规划、二叉树 困难
0125 验证回文串 Python 字符串、双指针 简单
0127 单词接龙 Python 广度优先搜索、哈希表、字符串 困难
0128 最长连续序列 Python 并查集、数组、哈希表 中等
0129 求根节点到叶节点数字之和 Python 树、深度优先搜索、二叉树 中等
0130 被围绕的区域 Python 深度优先搜索、广度优先搜索、并查集、数组、矩阵 中等
0131 分割回文串 Python 字符串、动态规划、回溯 中等
0133 克隆图 Python 深度优先搜索、广度优先搜索、图 中等
0134 加油站 Python 贪心、数组 中等
0135 分发糖果 Python 贪心、数组 困难
0136 只出现一次的数字 Python 位运算、位运算 简单
0137 只出现一次的数字 II Python 位运算、数组 简单
0138 复制带随机指针的链表 Python 链表、哈希表 中等
0139 单词拆分 Python 字典树、记忆化搜索、哈希表、字符串、动态规划 中等
0140 单词拆分 II Python 字典树、记忆化搜索、哈希表、字符串、动态规划、回溯 困难
0141 环形链表 Python 链表、双指针 简单
0142 环形链表 II Python 链表、双指针 中等
0143 重排链表 Python 栈、递归、链表、双指针 中等
0144 二叉树的前序遍历 Python 栈、树 中等
0145 二叉树的后序遍历 Python 栈、树 简单
0147 对链表进行插入排序 Python 链表、排序 中等
0148 排序链表 Python 链表、双指针、分治、排序、归并排序 中等
0149 直线上最多的点数 Python 哈希表、数学 困难
0150 逆波兰表达式求值 Python 中等
0151 翻转字符串里的单词 Python 双指针、字符串 中等
0152 乘积最大子数组 Python 数组、动态规划 中等
0153 寻找旋转排序数组中的最小值 Python 数组、二分查找 中等
0154 寻找旋转排序数组中的最小值 II Python 数组、二分查找 困难
0155 最小栈 Python 栈、设计 简单
0159 至多包含两个不同字符的最长子串 Python 哈希表、双指针、字符串、滑动窗口 中等
0160 相交链表 Python 链表、双指针 简单
0162 寻找峰值 Python 数组、二分查找 中等
0164 最大间距 Python 数组、桶排序、基数排序、排序 困难
0166 分数到小数 Python 哈希表、数学 中等
0167 两数之和 II - 输入有序数组 Python 数组、双指针、二分查找 简单
0168 Excel表列名称 Python 数学 简单
0169 多数元素 Python 数组、哈希表 简单
0170 两数之和 III - 数据结构设计 Python 设计、哈希表 简单
0171 Excel表列序号 Python 数组、字符串 简单
0172 阶乘后的零 Python 数学 简单
0173 二叉搜索树迭代器 Python 栈、树、设计 中等
0179 最大数 Python 贪心、字符串、排序 中等
0188 买卖股票的最佳时机 IV Python 数组、动态规划 困难
0189 旋转数组 Python 数组 中等
0190 颠倒二进制位 Python 位运算 简单
0191 位1的个数 Python 位运算 简单
0198 打家劫舍 Python 动态规划 中等
0199 二叉树的右视图 Python 树、深度优先搜索、广度优先搜索、递归、队列 中等
0200 岛屿数量 Python 搜索 中等
0202 快乐数 Python 哈希表、数学 简单
0203 移除链表元素 Python 链表 简单
0204 计数质数 Python 数学、哈希表 简单
0205 同构字符串 Python 哈希表 简单
0206 反转链表 Python 链表 简单
0207 课程表 Python 深度优先搜索、广度优先搜索、图、拓扑排序 中等
0208 实现 Trie (前缀树) Python 设计、字典树、哈希表、字符串 中等
0209 长度最小的子数组 Python 数组、双指针、二分查找 中等
0210 课程表 II Python 深度优先搜索、广度优先搜索、图、拓扑排序 中等
0211 添加与搜索单词 - 数据结构设计 Python 深度优先搜索、设计、字典树、字符串 中等
0212 单词搜索 II Python 字典树、数组、字符串、回溯、矩阵 困难
0213 打家劫舍 II Python 动态规划 中等
0215 数组中的第K个最大元素 Python 数组、堆排序 中等
0217 存在重复元素 Python 数组、哈希表 简单
0218 天际线问题 Python 树状数组、线段树、数组、分治、有序集合、扫描线、堆(优先队列) 困难
0219 存在重复元素 II Python 数组、哈希表 简单
0220 存在重复元素 III Python 排序、有序集合、哈希表 中等
0222 完全二叉树的节点个数 Python 树、深度优先搜索、二分查找、二叉树 中等
0223 矩形面积 Python 数学 简单
0225 用队列实现栈 Python 栈、设计 简单
0226 翻转二叉树 Python 树、递归 简单
0227 基本计算器 II Python 栈、字符串 中等
0231 2的幂 Python 位运算、数学 简单
0232 用栈实现队列 Python 栈、设计 简单
0234 回文链表 Python 链表、双指针 简单
0235 二叉搜索树的最近公共祖先 Python 简单
0236 二叉树的最近公共祖先 Python 中等
0237 删除链表中的节点 Python 链表 简单
0238 除自身以外数组的乘积 Python 数组 中等
0239 滑动窗口最大值 Python 队列,数组、滑动窗口、单调队列、堆(优先队列) 困难
0240 搜索二维矩阵 II Python 二分查找、分治算法 中等
0242 有效的字母异位词 Python 字符串、哈希表、排序 简单
0249 移位字符串分组 Python 哈希表、字符串 中等
0257 二叉树的所有路径 Python 树、深度优先搜索 简单
0258 各位相加 Python 数学 简单
0259 较小的三数之和 Python 数组、双指针、二分查找、排序 中等
0260 只出现一次的数字 III Python 位运算、数组 中等
0263 丑数 Python 数学 简单
0264 丑数 II Python 哈希表、数学、动态规划、堆(优先队列) 中等
0268 丢失的数字 Python 位运算、数组、数学 简单
0270 最接近的二叉搜索树值 Python 树、二分查找 简单
0278 第一个错误的版本 Python 数组、二分查找 简单
0279 完全平方数 Python 广度优先搜索、数学、动态规划 中等
0283 移动零 Python 数组、双指针 简单
0285 二叉搜索树中的中序后继 Python 栈、树、深度优先搜索、二叉搜索树、二叉树 简单
0286 墙与门 Python 广度优先搜索 中等
0287 寻找重复数 Python 数组、双指针、二分查找 中等
0288 单词的唯一缩写 Python 设计、哈希表 中等
0289 生命游戏 Python 数组、矩阵、模拟 中等
0290 单词规律 Python 哈希表 简单
0292 Nim 游戏 Python 数学 简单
0295 数据流的中位数 Python 设计、双指针、数据流、排序、堆(优先队列) 困难
0297 二叉树的序列化与反序列化 Python 树、设计 困难
0300 最长递增子序列 Python 二分查找、动态规划 中等
0304 二维区域和检索 - 矩阵不可变 Python 设计、数组、矩阵、前缀和 中等
0309 最佳买卖股票时机含冷冻期 Python 数组、动态规划 中等
0315 计算右侧小于当前元素的个数 Python 树状数组、线段树、数组、二分查找、分治、有序集合、归并排序 困难
0316 去除重复字母 Python 栈、贪心、字符串、单调栈 中等
0318 最大单词长度乘积 Python 位运算、数组、字符串 中等
0322 零钱兑换 Python 动态规划 中等
0323 无向图中连通分量的数目 Python 深度优先搜索、广度优先搜索、并查集、图 中等
0324 摆动排序 II Python 数组、分治、快速选择、排序 中等
0326 3 的幂 Python 数学 简单
0328 奇偶链表 Python 链表 中等
0329 矩阵中的最长递增路径 Python 深度优先搜索、广度优先搜索、图、拓扑排序、记忆化搜索、动态规划 困难
0334 递增的三元子序列 Python 贪心、数组 中等
0336 回文对 Python 字典树、数组、哈希表、字符串 困难
0337 打家劫舍 III Python 树、深度优先搜索、动态规划、二叉树 中等
0338 比特位计数 Python 位运算、动态规划 简单
0340 至多包含 K 个不同字符的最长子串 Python 中等 哈希表、字符串、滑动窗口
0341 扁平化嵌套列表迭代器 Python 栈、树、深度优先搜索、设计、队列、迭代器 中等
0342 4的幂 Python 位运算 简单
0343 整数拆分 Python 数学、动态规划 中等
0344 反转字符串 Python 字符串 简单
0345 反转字符串中的元音字母 Python 字符串 简单
0346 数据流中的移动平均值 Python 设计、队列、数组、数据流 简单
0347 前 K 个高频元素 Python 堆、哈希表 中等
0349 两个数组的交集 Python 数组、哈希表 简单
0350 两个数组的交集 II Python 数组、哈希表 简单
0354 俄罗斯套娃信封问题 Python 动态规划、二分查找 困难
0359 日志速率限制器 Python 设计、哈希表 简单
0360 有序转化数组 Python 数组、数学、双指针、排序 中等
0367 有效的完全平方数 Python 数学、二分查找 简单
0371 两整数之和 Python 位运算 中等
0374 猜数字大小 Python 二分查找 简单
0376 摆动序列 Python 贪心、数组、动态规划 中等
0377 组合总和 Ⅳ Python 数组、动态规划 中等
0378 有序矩阵中第 K 小的元素 Python 数组、二分查找、矩阵、排序、堆(优先队列) 中等
0380 常数时间插入、删除和获取随机元素 Python 数组、哈希表 中等
0383 赎金信 Python 哈希表、字符串、计数 简单
0386 字典序排数 Python 深度优先搜索、字典树 中等
0387 字符串中的第一个唯一字符 Python 字符串、哈希表 简单
0389 找不同 Python 位运算、哈希表 简单
0392 判断子序列 Python 双指针、字符串、动态规划 简单
0394 字符串解码 Python 栈、深度优先搜索 中等
0395 至少有 K 个重复字符的最长子串 Python 哈希表、字符串、分治、滑动窗口 中等
0399 除法求值 Python 深度优先搜索、广度优先搜索、并查集、图、数组、最短路 中等
0400 第 N 位数字 Python 数学、二分查找 中等
0404 左叶子之和 Python 简单
0405 数字转换为十六进制数 Python 位运算、数学 简单
0406 根据身高重建队列 Python 贪心、数组、排序 中等
0409 最长回文串 Python 贪心、哈希表、字符串 简单
0410 分割数组的最大值 Python 二分查找、动态规划 困难
0412 Fizz Buzz Python 简单
0415 字符串相加 Python 字符串、大数加法 简单
0416 分割等和子集 Python 数组、动态规划 中等
0417 太平洋大西洋水流问题 Python 深度优先搜索、广度优先搜索、数组、矩阵 中等
0421 数组中两个数的最大异或值 Python 位运算、字典树、数组、哈希表 中等
0424 替换后的最长重复字符 Python 双指针、滑动窗口 中等
0425 单词方块 Python 字典树、数组、字符串、回溯 困难
0426 将二叉搜索树转化为排序的双向链表 Python 栈、树、深度优先搜索、二叉搜索树、链表、二叉树、双向链表 中等
0428 序列化和反序列化 N 叉树 Python 树、深度优先搜索、广度优先搜索、字符串 困难
0429 N 叉树的层序遍历 Python 树、广度优先搜索 中等
0430 扁平化多级双向链表 Python 链表 中等
0435 无重叠区间 Python 贪心、数组、动态规划、排序 中等
0437 路径总和 III Python 树、深度优先搜索、二叉树 中等
0438 找到字符串中所有字母异位词 Python 哈希表、字符串、滑动窗口 中等
0445 两数相加 II Python 栈、链表、数学 中等
0447 回旋镖的数量 Python 哈希表、数学 中等
0450 删除二叉搜索树中的节点 Python 中等
0451 根据字符出现频率排序 Python 哈希表、字符串、桶排序、计数、排序、堆(优先队列) 中等
0452 用最少数量的箭引爆气球 Python 贪心、数组、排序 中等
0454 四数相加 II Python 哈希表 中等
0455 分发饼干 Python 贪心、数组、排序 简单
0461 汉明距离 Python 位运算 简单
0467 环绕字符串中唯一的子字符串 Python 字符串、动态规划 中等
0473 火柴拼正方形 Python 位运算、数组、动态规划、回溯、状态压缩 中等
0474 一和零 Python 数组、字符串、动态规划 中等
0480 滑动窗口中位数 Python 数组、哈希表、滑动窗口、堆(优先队列) 困难
0485 最大连续 1 的个数 Python 数组 简单
0487 最大连续1的个数 II Python 数组、动态规划、滑动窗口 中等
0491 递增子序列 Python 位运算、数组、哈希、回溯 中等
0494 目标和 Python 深度优先搜索、动态规划 中等
0496 下一个更大元素 I Python 栈、数组、哈希表、单调栈 简单
0498 对角线遍历 Python 数组、矩阵、模拟 中等
0501 二叉搜索树中的众数 Python 树、深度优先搜索、二叉搜索树、二叉树 简单
0503 下一个更大元素 II Python 栈、数组、单调栈 中等
0504 七进制数 Python 数学 简单
0506 相对名次 Python 数组、排序、堆(优先队列) 简单
0509 斐波那契数 Python 数组 简单
0513 找树左下角的值 Python 树、深度优先搜索、广度优先搜索、二叉树 中等
0515 在每个树行中找最大值 Python 树、深度优先搜索、广度优先搜索、二叉树 中等
0516 最长回文子序列 Python 字符串、动态规划 中等
0518 零钱兑换 II Python 数组、动态规划 中等
0525 连续数组 Python 数组、哈希表、前缀和 中等
0530 二叉搜索树的最小绝对差 Python 树、深度优先搜索、广度优先搜索、二叉搜索树、二叉树 简单
0538 把二叉搜索树转换为累加树 Python 树、深度优先搜索、二叉搜索树、二叉树 中等
0539 最小时间差 Python 数组、数学、字符串、排序 中等
0542 01 矩阵 Python 深度优先搜索、广度优先搜索 中等
0543 二叉树的直径 Python 二叉树 简单
0547 省份数量 Python 深度优先搜索、广度优先搜索、并查集、图 中等
0557 反转字符串中的单词 III Python 字符串 简单
0560 和为 K 的子数组 Python 数组、哈希表、前缀和 中等
0561 数组拆分 I Python 数组 简单
0567 字符串的排列 Python 哈希表、双指针、字符串、滑动窗口 中等
0575 分糖果 Python 数组、哈希表 简单
0583 两个字符串的删除操作 Python 字符串、动态规划 中等
0589 N 叉树的前序遍历 Python 栈、树、深度优先搜索 简单
0590 N 叉树的后序遍历 Python 栈、树、深度优先搜索 简单
0599 两个列表的最小索引总和 Python 哈希表 简单
0611 有效三角形的个数 Python 贪心、数组、双指针、二分查找、排序 中等
0616 给字符串添加加粗标签 Python 字典树、数组、哈希表、字符串、字符串匹配 中等
0617 合并二叉树 Python 树、深度优先搜索、广度优先搜索、二叉树 简单
0621 任务调度器 Python 贪心算法、队列、数组 中等
0622 设计循环队列 Python 队列 中等
0633 平方数之和 Python 双指针 中等
0642 设计搜索自动补全系统 Python 设计、字典树、字符串、数据流 困难
0643 子数组最大平均数 I Python 数组、滑动窗口 简单
0647 回文子串 Python 字符串、动态规划 中等
0648 单词替换 Python 字典树、数组、哈希、字符串 中等
0652 寻找重复的子树 Python 树、哈希表 中等
0653 两数之和 IV - 输入 BST Python 树、深度优先搜索、广度优先搜索、二叉搜索树、哈希表、双指针、二叉树 简单
0654 最大二叉树 Python 栈、树、数组、分治、二叉树、单调栈 中等
0658 找到 K 个最接近的元素 Python 二分查找 中等
0665 非递减数列 Python 数组 简单
0669 修剪二叉搜索树 Python 树、深度优先搜索、二叉搜索树、二叉树 中等
0673 最长递增子序列的个数 Python 动态规划 中等
0674 最长连续递增序列 Python 数组 简单
0676 实现一个魔法字典 Python 设计、字典树、哈希表、字符串 中等
0677 键值映射 Python 设计、字典树、哈希表、字符串 中等
0680 验证回文字符串 Ⅱ Python 贪心、双指针、字符串 简单
0683 K 个关闭的灯泡 Python 树状数组、数组、有序集合、滑动窗口 苦难
0684 冗余连接 Python 深度优先搜索、广度优先搜索、并查集、图 中等
0690 员工的重要性 Python 深度优先搜索、广度优先搜索、哈希表 简单
0695 岛屿的最大面积 Python 搜索 中等
0700 二叉搜索树中的搜索 Python 简单
0701 二叉搜索树中的插入操作 Python 中等
0702 搜索长度未知的有序数组 Python 二分查找 中等
0703 数据流中的第 K 大元素 Python 树、设计、二叉搜索树、二叉树、数据流、堆(优先队列) 简单
0704 二分查找 Python 二分查找 简单
0705 设计哈希集合 Python 哈希表 简单
0706 设计哈希映射 Python 哈希表 简单
0707 设计链表 Python 链表 中等
0708 循环有序列表的插入 Python 链表 中等
0713 乘积小于K的子数组 Python 数组、滑动窗口 中等
0714 买卖股票的最佳时机含手续费 Python 贪心、数组、动态规划 中等
0718 最长重复子数组 Python 数组、二分查找、动态规划、滑动窗口、哈希函数、滚动哈希 中等
0719 找出第 k 小的距离对 Python 堆、数组、二分查找 困难
0720 词典中最长的单词 Python 字典树、数组、哈希表、字符串、排序 简单
0724 寻找数组的中心下标 Python 数组 简单
0727 最小窗口子序列 Python 字符串、动态规划、滑动窗口 困难
0733 图像渲染 Python 深度优先搜索 简单
0735 行星碰撞 Python 栈、数组 中等
0738 单调递增的数字 Python 贪心、数学 中等
0739 每日温度 Python 栈、哈希表 中等
0744 寻找比目标字母大的最小字母 Python 二分查找 简单
0746 使用最小花费爬楼梯 Python 数组、动态规划 简单
0752 打开转盘锁 Python 广度优先搜索 中等
0758 字符串中的加粗单词 Python 字典树、数组、哈希表、字符串、字符串匹配 中等
0763 划分字母区间 Python 贪心、哈希表、双指针、字符串 中等
0765 情侣牵手 Python 贪心、深度优先搜索、广度优先搜索、并查集、图 困难
0771 宝石与石头 Python 哈希表、字符串 简单
0778 水位上升的泳池中游泳 Python 深度优先搜索、广度优先搜索、并查集、数组、二分查找、矩阵、堆(优先队列) 困难
0779 第K个语法符号 Python 递归 中等
0784 字母大小写全排列 Python 位运算、字符串、回溯 中等
0785 判断二分图 Python 深度优先搜索、广度优先搜索、并查集、图 中等
0795 区间子数组个数 Python 数组、双指针 中等
0797 所有可能的路径 Python 深度优先搜索、广度优先搜索、图、回溯 中等
0801 使序列递增的最小交换次数 Python 动态规划 中等
0802 找到最终的安全状态 Python 深度优先搜索、广度优先搜索、图、拓扑排序 中等
0803 打砖块 Python 并查集、数组、矩阵 困难
0814 二叉树剪枝 Python 树、深度优先搜索、二叉树 中等
0820 单词的压缩编码 Python 字典树、数组、哈希表、字符串 中等
0832 翻转图像 Python 数组、双指针、矩阵、模拟 简单
0836 矩形重叠 Python 数学 简单
0841 钥匙和房间 Python 深度优先搜索、图 中等
0844 比较含退格的字符串 Python 栈、双指针、字符串、模拟 简单
0845 数组中的最长山脉 Python 数组、双指针、动态规划、枚举 中等
0852 山脉数组的峰顶索引 Python 数组、二分查找 简单
0860 柠檬水找零 Python 贪心、数组 简单
0867 转置矩阵 Python 数组 简单
0872 叶子相似的树 Python 树、深度优先搜索、二叉树 简单
0873 最长的斐波那契子序列的长度 Python 数组、哈希表、动态规划 中等
0875 爱吃香蕉的珂珂 Python 数组、二分查找 中等
0876 链表的中间结点 Python 链表、指针 简单
0877 石子游戏 Python 数组、数学、动态规划、博弈 中等
0881 救生艇 Python 贪心、数组、双指针、排序 中等
0886 可能的二分法 Python 深度优先搜索、广度优先搜索、并查集、图 中等
0897 递增顺序搜索树 Python 栈、树、深度优先搜索、二叉搜索树、二叉树 简单
0901 股票价格跨度 Python 栈、设计、数据流、单调栈 中等
0904 水果成篮 Python 数组、哈希表、滑动窗口 中等
0908 最小差值 I Python 数组、数学 简单
0912 排序数组 Python 数组、分治、桶排序、计数排序、基数排序、排序、堆(优先队列) 中等
0918 环形子数组的最大和 Python 数组、动态规划 中等
0919 完全二叉树插入器 Python 树、广度优先搜索、设计、二叉树 中等
0925 长按键入 Python 双指针、字符串 简单
0933 最近的请求次数 Python 设计、队列、数据流 简单
0938 二叉搜索树的范围和 Python 二叉树 简单
0946 验证栈序列 Python 栈、数组、模拟 中等
0947 移除最多的同行或同列石头 Python 深度优先搜索、并查集、图 中等
0953 验证外星语词典 Python 数组、哈希表、字符串 简单
0959 由斜杠划分区域 Python 深度优先搜索、广度优先搜索、并查集、图 中等
0968 监控二叉树 Python 树、深度优先搜索、动态规划、二叉树 困难
0974 和可被 K 整除的子数组 Python 数组、哈希表、前缀和 中等
0977 有序数组的平方 Python 数组、双指针、排序 简单
0978 最长湍流子数组 Python 数组、动态规划、滑动窗口 中等
0990 等式方程的可满足性 Python 并查集、图、数组、字符串 中等
0992 K 个不同整数的子数组 Python 数组、哈希表、计数、滑动窗口 困难
0993 二叉树的堂兄弟节点 Python 树、广度优先搜索 简单
0995 K 连续位的最小翻转次数 Python 位运算、数组、前缀和、滑动窗口 困难
1004 最大连续1的个数 III Python 双指针、滑动窗口 中等
1005 K 次取反后最大化的数组和 Python 贪心、数组、排序 简单
1008 前序遍历构造二叉搜索树 Python 栈、树、二叉搜索树、数组、二叉树、单调栈 中等
1011 在 D 天内送达包裹的能力 Python 数组、二分查找 中等
1014 最佳观光组合 Python 数组、动态规划 中等
1020 飞地的数量 Python 深度优先搜索、广度优先搜索、并查集、数组、矩阵 中等
1023 驼峰式匹配 Python 字典树、双指针、字符串、字符串匹配 中等
1025 除数博弈 Python 脑筋急转弯、数学、动态规划、博弈 简单
1028 从先序遍历还原二叉树 Python 树、深度优先搜索、字符串、二叉树 困难
1034 边框着色 Python 深度优先搜索、广度优先搜索、数组、矩阵 中等
1035 不相交的线 Python 数组、动态规划 中等
1038 把二叉搜索树转换为累加树 Python 树、深度优先搜索、二叉搜索树、二叉树 中等
1047 删除字符串中的所有相邻重复项 Python 字符串、栈 简单
1049 最后一块石头的重量 II Python 数组、动态规划 中等
1052 爱生气的书店老板 Python 数组、滑动窗口 中等
1065 字符串的索引对 Python 字典树、数组、字符串、排序 简单
1079 活字印刷 Python 字符串、回溯 中等
1081 不同字符的最小子序列 Python 栈、贪心、字符串、单调栈 中等
1091 二进制矩阵中的最短路径 Python 广度优先搜索、数组、矩阵 中等
1095 山脉数组中查找目标值 Python 数组、二分查找、交互 困难
1099 小于 K 的两数之和 Python 数组、双指针、二分查找、排序 简单
1100 长度为 K 的无重复字符子串 Python 哈希表、字符串、滑动窗口 中等
1122 数组的相对排序 Python 数组、哈希表、计数排序、排序 简单
1136 平行课程 Python 图、拓扑排序 中等
1137 第 N 个泰波那契数 Python 记忆化搜索、数学、动态规划 简单
1143 最长公共子序列 Python 字符串、动态规划 中等
1151 最少交换次数来组合所有的 1 Python 数组、滑动窗口 中等
1176 健身计划评估 Python 数组、滑动窗口 简单
1202 交换字符串中的元素 Python 深度优先搜索、广度优先搜索、并查集、哈希表、字符串 中等
1208 尽可能使字符串相等 Python 字符串、二分查找、前缀和、滑动窗口 中等
1227 飞机座位分配概率 Python 数学、动态规划 中等
1229 安排会议日程 Python 数组、双指针、排序 中等
1232 缀点成线 Python 几何、数组、数学 简单
1254 统计封闭岛屿的数目 Python 深度优先搜索、广度优先搜索、并查集、数组、矩阵 中等
1268 搜索推荐系统 Python 字典树、数组、字符串 中等
1300 转变数组后最接近目标值的数组和 Python 数组、二分查找、排序 中等
1319 连通网络的操作次数 Python 深度优先搜索、广度优先搜索、并查集、图 中等
1343 大小为 K 且平均值大于等于阈值的子数组数目 Python 数组、滑动窗口 中等
1358 包含所有三种字符的子字符串数目 Python 哈希表、字符串、滑动数组 中等
1423 可获得的最大点数 Python 数组、前缀和、滑动窗口 中等
1438 绝对差不超过限制的最长连续子数组 Python 队列、数组、有序集合、滑动窗口、单调队列、堆(优先队列) 中等
1446 连续字符 Python 字符串 简单
1456 定长子串中元音的最大数目 Python 字符串、滑动窗口 中等
1480 一维数组的动态和 Python 数组 简单
1482 制作 m 束花所需的最少天数 Python 数组、二分查找 中等
1486 数组异或操作 Python 位运算、数组 简单
1493 删掉一个元素以后全为 1 的最长子数组 Python 数组、动态规划、滑动窗口 中等
1561 你可以获得的最大硬币数目 Python 贪心、数组、数学、博弈、排序 中等
1567 乘积为正数的最长子数组长度 Python 贪心、数组、动态规划 中等
1593 拆分字符串使唯一子字符串的数目最大 Python 哈希表、字符串、回溯 中等
1603 设计停车系统 Python 设计、计数、模拟 简单
1631 最小体力消耗路径 Python 深度优先搜索、广度优先搜索、并查集、数组、二分查找、矩阵、堆(优先队列) 中等
1658 将 x 减到 0 的最小操作数 Python 数组、哈希表、二分查找、前缀和、滑动窗口 中等
1695 删除子数组的最大得分 Python 数组、哈希表、滑动窗口 中等
1698 字符串的不同子字符串个数 Python 字典树、字符串、后缀数组、哈希函数、滚动哈希 中等
1720 解码异或后的数组 Python 位运算 简单
1858 包含所有前缀的最长单词 Python 深度优先搜索、字典树 中等
1929 数组串联 Python 数组 简单
2011 执行操作后的变量值 Python 数组、字符串、模拟 简单
剑指 Offer 03 数组中重复的数字 Python 数组、哈希表、排序 简单
剑指 Offer 04 二维数组中的查找 Python 数组、二分查找、分治、矩阵 中等
剑指 Offer 05 替换空格 Python 字符串 简单
剑指 Offer 06 从尾到头打印链表 Python 栈、递归、链表、双指针 简单
剑指 Offer 07 重建二叉树 Python 树、数组、哈希表、分治、二叉树 中等
剑指 Offer 09 用两个栈实现队列 Python 栈、设计、队列 简单
剑指 Offer 10 - I 斐波那契数列 Python 记忆化搜索、数学、动态规划 简单
剑指 Offer 10 - II 青蛙跳台阶问题 Python 记忆化搜索、数学、动态规划 简单
剑指 Offer 11 旋转数组的最小数字 Python 数组、二分查找 简单
剑指 Offer 12 矩阵中的路径 Python 数组、回溯、矩阵 中等
剑指 Offer 13 机器人的运动范围 Python 深度优先搜索、广度优先搜索、动态规划 中等
剑指 Offer 14 - I 剪绳子 Python 数学、动态规划 中等
剑指 Offer 15 二进制中1的个数 Python 位运算 简单
剑指 Offer 16 数值的整数次方 Python 递归、数学 中等
剑指 Offer 17 打印从1到最大的n位数 Python 数组、数学 简单
剑指 Offer 18 删除链表的节点 Python 链表 简单
剑指 Offer 21 调整数组顺序使奇数位于偶数前面 Python 数组、双指针、排序 简单
剑指 Offer 22 链表中倒数第k个节点 Python 链表、双指针 简单
剑指 Offer 24 反转链表 Python 递归、链表 简单
剑指 Offer 25 合并两个排序的链表 Python 递归、链表 简单
剑指 Offer 26 树的子结构 Python 树、深度优先搜索、二叉树 中等
剑指 Offer 27 二叉树的镜像 Python 树、深度优先搜索、广度优先搜索、二叉树 简单
剑指 Offer 28 对称的二叉树 Python 树、深度优先搜索、广度优先搜索、二叉树 简单
剑指 Offer 29 顺时针打印矩阵 Python 数组、矩阵、模拟 简单
剑指 Offer 30 包含min函数的栈 Python 栈、设计 简单
剑指 Offer 31 栈的压入、弹出序列 Python 栈、数组、模拟 中等
剑指 Offer 32 - I 从上到下打印二叉树 Python 树、广度优先搜索、二叉树 中等
剑指 Offer 32 - II 从上到下打印二叉树 II Python 树、广度优先搜索、二叉树 简单
剑指 Offer 32 - III 从上到下打印二叉树 III Python 树、广度优先搜索、二叉树 中等
剑指 Offer 33 二叉搜索树的后序遍历序列 Python 栈、树、二叉搜索树、递归、二叉树、单调栈 中等
剑指 Offer 34 二叉树中和为某一值的路径 Python 树、深度优先搜索、回溯、二叉树 中等
剑指 Offer 35 复杂链表的复制 Python 哈希表、链表 中等
剑指 Offer 36 二叉搜索树与双向链表 Python 栈、树、深度优先搜索、二叉搜索树、链表、二叉树、双向链表 中等
剑指 Offer 37 序列化二叉树 Python 树、深度优先搜索、广度优先搜索、设计、字符串、二叉树 困难
剑指 Offer 38 字符串的排列 Python 字符串、回溯 中等
剑指 Offer 39 数组中出现次数超过一半的数字 Python 数组、哈希表、分治、计数、排序 简单
剑指 Offer 40 最小的k个数 Python 数组、分治、快速选择、排序、堆(优先队列) 简单
剑指 Offer 41 数据流中的中位数 Python 设计、双指针、数据流、排序、堆(优先队列) 困难
剑指 Offer 42 连续子数组的最大和 Python 数组、分治、动态规划 简单
剑指 Offer 44 数字序列中某一位的数字 Python 数学、二分查找 中等
剑指 Offer 45 把数组排成最小的数 Python 贪心、字符串、排序 中等
剑指 Offer 46 把数字翻译成字符串 Python 字符串、动态规划 中等
剑指 Offer 47 礼物的最大价值 Python 数组、动态规划、矩阵 中等
剑指 Offer 48 最长不含重复字符的子字符串 Python 哈希表、字符串、滑动窗口 中等
剑指 Offer 49 丑数 Python 哈希表、数学、动态规划、堆(优先队列) 中等
剑指 Offer 50 第一个只出现一次的字符 Python 队列、哈希表、字符串、计数 简单
剑指 Offer 51 数组中的逆序对 Python 树状数组、线段树、数组、二分查找、分治、有序集合、归并排序 困难
剑指 Offer 52 两个链表的第一个公共节点 Python 哈希表、链表、双指针 简单
剑指 Offer 53 - I 在排序数组中查找数字 I Python 数组、二分查找 简单
剑指 Offer 53 - II 0~n-1中缺失的数字 Python 位运算、数组、哈希表、数学、二分查找 简单
剑指 Offer 54 二叉搜索树的第k大节点 Python 树、深度优先搜索、二叉搜索树、二叉树 简单
剑指 Offer 55 - I 二叉树的深度 Python 树、深度优先搜索、广度优先搜索、二叉树 简单
剑指 Offer 55 - II 平衡二叉树 Python 树、深度优先搜索、二叉树 简单
剑指 Offer 56 - I 数组中数字出现的次数 Python 位运算、数组 中等
剑指 Offer 57 和为s的两个数字 Python 数组、双指针、二分查找 简单
剑指 Offer 57 - II 和为s的连续正数序列 Python 数学、双指针、枚举 简单
剑指 Offer 58 - I 翻转单词顺序 Python 双指针、字符串 简单
剑指 Offer 58 - II 左旋转字符串 Python 数学、双指针、字符串 简单
剑指 Offer 59 - I 滑动窗口的最大值 Python 队列、滑动窗口、单调队列、堆(优先队列) 困难
剑指 Offer 59 - II 队列的最大值 Python 设计、队列、单调队列 中等
剑指 Offer 61 扑克牌中的顺子 Python 数组、排序 简单
剑指 Offer 62 圆圈中最后剩下的数字 Python 递归、数学 简单
剑指 Offer 63 股票的最大利润 Python 数组、动态规划 中等
剑指 Offer 64 求1+2+…+n Python 位运算、递归、脑筋急转弯 中等
剑指 Offer 65 不用加减乘除做加法 Python 位运算、数组 简单
剑指 Offer 66 构建乘积数组 Python 数组、前缀和 中等
剑指 Offer 67 把字符串转换成整数 Python 字符串 中等
剑指 Offer 68 - I 二叉搜索树的最近公共祖先 Python 树、深度优先搜索、二叉搜索树、二叉树 简单
剑指 Offer 68 - II 二叉树的最近公共祖先 Python 树、深度优先搜索、二叉树 简单
剑指 Offer II 001 整数除法 Python 位运算、数学 简单
剑指 Offer II 002 二进制加法 Python 位运算、数学、字符串、模拟 简单
剑指 Offer II 003 前 n 个数字二进制中 1 的个数 Python 位运算、动态规划 简单
剑指 Offer II 004 只出现一次的数字 Python 位运算、数组 中等
剑指 Offer II 005 单词长度的最大乘积 Python 位运算、数组、字符串 中等
剑指 Offer II 006 排序数组中两个数字之和 Python 数组、双指针、二分查找 简单
剑指 Offer II 007 数组中和为 0 的三个数 Python 数组、双指针、排序 中等
剑指 Offer II 008 和大于等于 target 的最短子数组 Python 数组、二分查找、前缀和、滑动窗口 中等
剑指 Offer II 009 乘积小于 K 的子数组 Python 数组、滑动窗口 中等
剑指 Offer II 010 和为 k 的子数组 Python 数组、哈希表、前缀和 中等
剑指 Offer II 011 0 和 1 个数相同的子数组 Python 数组、哈希表、前缀和 中等
剑指 Offer II 012 左右两边子数组的和相等 Python 数组、前缀和 简单
剑指 Offer II 013 二维子矩阵的和 Python 设计、数组、矩阵、前缀和 中等
剑指 Offer II 016 不含重复字符的最长子字符串 Python 哈希表、字符串、滑动数组 中等
剑指 Offer II 017 含有所有字符的最短字符串 Python 哈希表、字符串、滑动窗口 困难
剑指 Offer II 018 有效的回文 Python 双指针、字符串 简单
剑指 Offer II 019 最多删除一个字符得到回文 Python 贪心、双指针、字符串 简单
剑指 Offer II 020 回文子字符串的个数 Python 字符串、动态规划 中等
剑指 Offer II 021 删除链表的倒数第 n 个结点 Python 链表、双指针 中等
剑指 Offer II 022 链表中环的入口节点 Python 哈希表、链表、双指针 中等
剑指 Offer II 023 两个链表的第一个重合节点 Python 哈希表、链表、双指针 简单
剑指 Offer II 024 反转链表 Python 递归、链表 简单
剑指 Offer II 025 链表中的两数相加 Python 栈、链表、数学 中等
剑指 Offer II 026 重排链表 Python 栈、递归、链表、双指针 中等
剑指 Offer II 027 回文链表 Python 栈、递归、链表、双指针 简单
剑指 Offer II 028 展平多级双向链表 Python 深度优先搜索、链表、双向链表 中等
剑指 Offer II 029 排序的循环链表 Python 链表 中等
剑指 Offer II 030 插入、删除和随机访问都是 O(1) 的容器 Python 设计、数组、哈希表、数学、随机化 中等
剑指 Offer II 031 最近最少使用缓存 Python 设计、哈希表、链表、双向链表 中等
剑指 Offer II 032 有效的变位词 Python 哈希表、字符串、排序 简单
剑指 Offer II 033 变位词组 Python 哈希表、字符串、排序 中等
剑指 Offer II 034 外星语言是否排序 Python 数组、哈希表、字符串 简单
剑指 Offer II 035 最小时间差 Python 数组、数学、字符串、排序 中等
剑指 Offer II 036 后缀表达式 Python 栈、数组、数学 中等
剑指 Offer II 037 小行星碰撞 Python 栈、数组 中等
剑指 Offer II 038 每日温度 Python 栈、数组、单调栈 中等
剑指 Offer II 039 直方图最大矩形面积 Python 栈、数组、单调栈 困难
剑指 Offer II 041 滑动窗口的平均值 Python 设计、队列、数组、数据流 简单
剑指 Offer II 042 最近请求次数 Python 设计、队列、数据流 简单
剑指 Offer II 043 往完全二叉树添加节点 Python 树、广度优先搜索、设计、二叉树 中等
剑指 Offer II 044 二叉树每层的最大值 Python 树、深度优先搜索、广度优先搜索、二叉树 中等
剑指 Offer II 045 二叉树最底层最左边的值 Python 树、深度优先搜索、广度优先搜索、二叉树 中等
剑指 Offer II 046 二叉树的右侧视图 Python 树、深度优先搜索、广度优先搜索、二叉树 中等
剑指 Offer II 047 二叉树剪枝 Python 树、深度优先搜索、二叉树 中等
剑指 Offer II 048 序列化与反序列化二叉树 Python 树、深度优先搜索、广度优先搜索、设计、字符串、二叉树 困难
剑指 Offer II 049 从根节点到叶节点的路径数字之和 Python 树、深度优先搜索、二叉树 中等
剑指 Offer II 050 向下的路径节点之和 Python 树、深度优先搜索、二叉树 中等
剑指 Offer II 051 节点之和最大的路径 Python 树、深度优先搜索、动态规划、二叉树 困难
剑指 Offer II 052 展平二叉搜索树 Python 栈、树、深度优先搜索、二叉搜索树、二叉树 简单
剑指 Offer II 053 二叉搜索树中的中序后继 Python 树、深度优先搜索、二叉搜索树、二叉树 中等
剑指 Offer II 054 所有大于等于节点的值之和 Python 树、深度优先搜索、二叉搜索树、二叉树 中等
剑指 Offer II 055 二叉搜索树迭代器 Python 栈、树、设计、二叉搜索树、二叉树、迭代器 中等
剑指 Offer II 056 二叉搜索树中两个节点之和 Python 树、深度优先搜索、广度优先搜索、二叉搜索树、哈希表、双指针、二叉树 简单
剑指 Offer II 057 值和下标之差都在给定的范围内 Python 数组、桶排序、有序集合、排序、滑动窗口 中等
剑指 Offer II 059 数据流的第 K 大数值 Python 树、设计、二叉搜索树、二叉树、数据流、堆(优先队列) 简单
剑指 Offer II 060 出现频率最高的 k 个数字 Python 数组、哈希表、分治、桶排序、计数、快速选择、排序、堆(优先队列) 中等
剑指 Offer II 062 实现前缀树 Python 设计、字典树、哈希表、字符串 中等
剑指 Offer II 063 替换单词 Python 字典树、数组、哈希、字符串 中等
剑指 Offer II 064 神奇的字典 Python 设计、字典树、哈希表、字符串 中等
剑指 Offer II 065 最短的单词编码 Python 字典树、数组、哈希表、字符串 中等
剑指 Offer II 066 单词之和 Python 设计、字典树、哈希表、字符串 中等
剑指 Offer II 067 最大的异或 Python 位运算、字典树、数组、哈希表 中等
剑指 Offer II 068 查找插入位置 Python 数组、二分查找 简单
剑指 Offer II 072 求平方根 Python 数学、二分查找 简单
剑指 Offer II 073 狒狒吃香蕉 Python 数组、二分查找 中等
剑指 Offer II 074 合并区间 Python 数组、排序 中等
剑指 Offer II 075 数组相对排序 Python 数组、哈希表、计数排序、排序 简单
剑指 Offer II 076 数组中的第 k 大的数字 Python 数组、分治、快速排序、排序、堆(优先队列) 中等
剑指 Offer II 077 链表排序 Python 链表、双指针、分治、排序、归并排序 中等
剑指 Offer II 078 合并排序链表 Python 链表、分治、堆(优先队列)、归并排序 困难
剑指 Offer II 079 所有子集 Python 位运算、数组、回溯 中等
剑指 Offer II 080 含有 k 个元素的组合 Python 数组、回溯 中等
剑指 Offer II 081 允许重复选择元素的组合 Python 数组、回溯 中等
剑指 Offer II 082 含有重复元素集合的组合 Python 数组、回溯 中等
剑指 Offer II 083 没有重复元素集合的全排列 Python 数组、回溯 中等
剑指 Offer II 084 含有重复元素集合的全排列 Python 数组、回溯 中等
剑指 Offer II 085 生成匹配的括号 Python 字符串、动态规划、回溯 中等
剑指 Offer II 086 分割回文子字符串 Python 字符串、动态规划、回溯 中等
剑指 Offer II 087 复原 IP Python 字符串、回溯 中等
剑指 Offer II 088 爬楼梯的最少成本 Python 数组、动态规划 简单
剑指 Offer II 089 房屋偷盗 Python 数组、动态规划 中等
剑指 Offer II 090 环形房屋偷盗 Python 数组、动态规划 中等
剑指 Offer II 093 最长斐波那契数列 Python 数组、哈希表、动态规划 中等
剑指 Offer II 095 最长公共子序列 Python 字符串、动态规划 中等
剑指 Offer II 097 子序列的数目 Python 字符串、动态规划 困难
剑指 Offer II 098 路径的数目 Python 数组、动态规划、组合数学 中等
剑指 Offer II 101 分割等和子集 Python 数组、字符串、模拟 简单
剑指 Offer II 102 加减的目标值 Python 数组、动态规划、回溯 中等
剑指 Offer II 103 最少的硬币数目 Python 广度优先搜索、数组、动态规划 中等
剑指 Offer II 104 排列的数目 Python 数组、动态规划 中等
剑指 Offer II 105 岛屿的最大面积 Python 深度优先搜索、广度优先搜索、并查集、数组、矩阵 中等
剑指 Offer II 106 二分图 Python 深度优先搜索、广度优先搜索、并查集、图 中等
剑指 Offer II 107 矩阵中的距离 Python 广度优先搜索、数组、动态规划、矩阵 中等
剑指 Offer II 108 单词演变 Python 广度优先搜索、哈希表、字符串 困难
剑指 Offer II 109 开密码锁 Python 广度优先搜索、数组、哈希表、字符串 中等
剑指 Offer II 111 计算除法 Python 深度优先搜索、广度优先搜索、并查集、图、数组、最短路 中等
剑指 Offer II 112 最长递增路径 Python 深度优先搜索、广度优先搜索、图、拓扑排序、记忆化搜索、动态规划 困难
剑指 Offer II 113 课程顺序 Python 深度优先搜索、广度优先搜索、图、拓扑排序 中等
剑指 Offer II 116 朋友圈 Python 深度优先搜索、广度优先搜索、并查集、图 中等
剑指 Offer II 118 多余的边 Python 深度优先搜索、广度优先搜索、并查集、图 中等
剑指 Offer II 119 最长连续序列 Python 并查集、数组、哈希表 中等
面试题 01.07 旋转矩阵 Python 数组、数学、矩阵 中等
面试题 01.08 零矩阵 Python 数组、哈希表、矩阵 中等
面试题 02.02 返回倒数第 k 个节点 Python 链表、双指针 简单
面试题 02.05 链表求和 Python 递归、链表、数学 中等
面试题 02.06 回文链表 Python 栈、递归、链表、双指针 简单
面试题 02.07 链表相交 Python 哈希表、链表、双指针 简单
面试题 02.08 环路检测 Python 链表、双指针 中等
面试题 03.02 栈的最小值 Python 栈、设计 简单
面试题 03.04 化栈为队 Python 栈、设计 简单
面试题 04.02 最小高度树 Python 树、二叉搜索树、数组、分治、二叉树 简单
面试题 04.05 合法二叉搜索树 Python 树、深度优先搜索、递归 中等
面试题 04.06 后继者 Python 树、深度优先搜索、二叉搜索树、二叉树 中等
面试题 04.08 首个共同祖先 Python 中等
面试题 04.12 求和路径 Python 树、深度优先搜索、二叉树 中等
面试题 08.04 幂集 Python 位运算、数组、回溯算法 中等
面试题 08.07 无重复字符串的排列组合 Python 字符串、回溯 中等
面试题 08.08 有重复字符串的排列组合 Python 字符串、回溯 中等
面试题 08.09 括号 Python 字符串、回溯算法 中等
面试题 08.10 颜色填充 Python 深度优先搜索、广度优先搜索、数组、矩阵 中等
面试题 08.12 八皇后 Python 数组、回溯 困难
面试题 10.01 合并排序的数组 Python 数组、双指针、排序 简单
面试题 10.02 变位词组 Python 哈希表、字符串、排序 中等
面试题 10.09 排序矩阵查找 Python 数组、二分查找、分治、矩阵 中等
面试题 16.02 单词频率 Python 设计、字典树、数组、哈希表、字符串 中等
面试题 16.05 阶乘尾数 Python 数学 简单
面试题 16.26 计算器 Python 栈、字符串 中等
面试题 17.14 最小K个数 Python 数组、分治、快速选择、排序、堆(优先队列) 中等
面试题 17.15 最长单词 Python 字典树、数组、哈希表、字符串 中等
面试题 17.17 多次搜索 Python 字典树、数组、哈希表、字符串、字符串匹配、滑动窗口 中等

leetcode-py's People

Contributors

bujige avatar itcharge avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.