doocs /leetcode

🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解

★ 36,760⑂ 9,485👁 331⑃ 5,868● 129▤ 21◈ 132
JavaCC-BY-SA-4.0Created 2018-09-16leetcode.doocs.org
36,760
stars
+3
9,485
forks
331
watchers
5,868
prs
129
issues
21
releases
132
discussions

README

介绍

本项目包含 LeetCode、《剑指 Offer(第 2 版)》、《剑指 Offer(专项突击版)》、《程序员面试金典(第 6 版)》等题目的相关题解。所有题解均由多种编程语言实现,包括但不限于:Java、Python、C++、Go、TypeScript、Rust。我们正在全力更新,欢迎 Star 🌟 关注本项目,获取项目最新动态。

English Version

 赞助商




感谢 APINEBULA 赞助本项目!APINEBULA 是银河录像局旗下的企业级 AI 聚合平台,背靠大平台资源,面向开发者、团队与企业用户提供稳定、高性价比的大模型 API 接入服务。平台聚合 Claude、GPT、Gemini 等主流满血模型,一个接口,接入全球顶尖 AI 大模型,各大模型价格低至 1 折起,支持企业级高并发、正式合同、对公打款与开票服务,适合 AI 编程、Agent 开发、业务系统集成等多种场景!使用此链接注册并在充值时填写 "leetcode" 优惠码可享九折优惠!



 想出现在这里?如有赞助意向,欢迎添加微信 YLB0109(备注「赞助」)联系洽谈。

 站点



 算法全解

- LeetCode
- 往期竞赛合集
- 剑指 Offer(第 2 版)
- 剑指 Offer(专项突击版)
- 程序员面试金典(第 6 版)

 专项突破

- JavaScript 专项练习
- 数据库专项练习

 算法提升专题

 1. 基础算法

- 在排序数组中查找元素的第一个和最后一个位置 - 二分查找
- 准时到达的列车最小时速 - 二分查找
- 可移除字符的最大数目 - 二分查找
- 排序数组 - 快速排序、归并排序
- 字符串相加 - 高精度加法
- 字符串相乘 - 高精度乘法
- 区域和检索 - 数组不可变 - 前缀和
- 二维区域和检索 - 矩阵不可变 - 二维前缀和
- 区间加法 - 前缀和、差分
- 用邮票贴满网格图 - 二维前缀和、二维差分
- 无重复字符的最长子串 - 双指针、哈希表
- 乘积小于 K 的子数组 - 双指针
- 位 1 的个数 - 位运算、lowbit
- 合并区间 - 区间合并

 2. 数据结构

- 设计链表 - 单链表、指针引用、数组实现
- 下一个更大元素 I - 单调栈
- 每日温度 - 单调栈
- 子数组的最小值之和 - 单调栈
- 最大宽度坡 - 单调栈
- 最多能完成排序的块 II - 单调栈
- 子数组范围和 - 单调栈
- 子数组最小乘积的最大值 - 单调栈
- 滑动窗口最大值 - 单调队列
- 满足不等式的最大值 - 单调队列
- 和至少为 K 的最短子数组 - 单调队列
- 带限制的子序列和 - 动态规划、单调队列优化
- 单词规律 II - 哈希表、回溯
- 最短回文串 - 字符串哈希
- 回文对 - 字符串哈希
- 最长重复子串 - 字符串哈希、二分查找
- 不同的循环子字符串 - 字符串哈希

 3. 搜索

- 图像渲染- BFS、DFS、Flood Fill 算法、连通性模型
- 岛屿数量 - BFS、Flood Fill 算法
- 01 矩阵 - 多源 BFS
- 地图中的最高点 - 多源 BFS
- 进击的骑士 - BFS、最短路模型
- 二进制矩阵中的最短路径 - BFS、最短路模型
- 迷宫中离入口最近的出口 - BFS、最短路模型
- 网格中的最短路径 - BFS、最短路模型
- 打开转盘锁 - 最小步数模型、双向 BFS、A 算法
- 单词接龙 - 最小步数模型、双向 BFS
- 转化数字的最小运算数 - 最小步数模型、双向 BFS
- 滑动谜题 - BFS、最小步数模型、A 算法
- 访问所有节点的最短路径 - BFS、最小步数模型、A 算法
- 为高尔夫比赛砍树 - BFS、A 算法
- 使网格图至少有一条有效路径的最小代价 - 双端队列 BFS
- 到达角落需要移除障碍物的最小数目 - 双端队列 BFS
- 迷宫 - DFS、连通性模型、Flood Fill 算法
- 单词搜索 - DFS、搜索顺序、回溯
- 黄金矿工 - DFS、搜索顺序、回溯
- 火柴拼正方形 - DFS、回溯、剪枝
- 划分为 k 个相等的子集 - DFS、回溯、剪枝
- 完成所有工作的最短时间 - DFS、回溯、剪枝
- 公平分发饼干 - DFS、回溯、剪枝
- 矩阵中的最长递增路径 - DFS、记忆化搜索
- 网格图中递增路径的数目 - DFS、记忆化搜索
- 翻转游戏 II - DFS、状态压缩、记忆化搜索
- 统计所有可行路径 - DFS、记忆化搜索
- 切披萨的方案数 - DFS、记忆化搜索



 4. 动态规划(DP)

- 杨辉三角 - 线性 DP、数字三角形模型
- 最小路径和 - 线性 DP、数字三角形模型
- 摘樱桃 - 线性 DP、数字三角形模型
- 摘樱桃 II - 线性 DP、数字三角形模型
- 最长递增子序列 - 线性 DP、最长上升子序列模型
- 无重叠区间 - 线性 DP、最长上升子序列模型、贪心优化
- 删列造序 III - 线性 DP、最长上升子序列模型
- 俄罗斯套娃信封问题 - 线性 DP、最长上升子序列模型、贪心优化
- 堆叠长方体的最大高度 - 排序、线性 DP、最长上升子序列模型
- 无矛盾的最佳球队 - 排序、线性 DP、最长上升子序列模型
- 最长公共子序列 - 线性 DP、最长公共子序列模型
- 两个字符串的最小 ASCII 删除和 - 线性 DP、最长公共子序列模型
- 两个字符串的删除操作 - 线性 DP、最长公共子序列模型
- 目标和 - 0-1 背包问题
- 分割等和子集 - 0-1 背包问题
- 最后一块石头的重量 II - 0-1 背包问题
- 零钱兑换 - 完全背包问题
- 组合总和 Ⅳ - 完全背包问题
- 从栈中取出 K 个硬币的最大面值和 - 分组背包问题
- 数字 1 的个数 - 数位 DP、记忆化搜索
- 统计各位数字都不同的数字个数 - 数位 DP、记忆化搜索、状态压缩
- 不含连续 1 的非负整数 - 数位 DP、记忆化搜索
- 旋转数字 - 数位 DP、记忆化搜索
- 最大为 N 的数字组合 - 数位 DP、记忆化搜索
- 统计特殊整数 - 数位 DP、记忆化搜索



 5. 高级数据结构

- 二维网格图中探测环 - 并查集、检测环
- 除法求值 - 并查集、权值维护
- 由斜杠划分区域 - 并查集、连通分量个数
- 水位上升的泳池中游泳 - 并查集
- 交换字符串中的元素 - 并查集
- 打砖块 - 并查集、逆向思维
- 尽量减少恶意软件的传播 II - 并查集、逆向思维
- 检查边长度限制的路径是否存在 - 并查集、离线思维
- 保证图可完全遍历 - 双并查集
- 区域和检索 - 数组可修改 - 树状数组、线段树
- 通过指令创建有序数组 - 树状数组、线段树
- 统计数组中好三元组数目 - 树状数组、线段树
- 最多 K 次交换相邻数位后得到的最小整数 - 树状数组
- 二维区域和检索 - 可变 - 二维树状数组、线段树
-

Discussions

Latest release

v0.3.0 v0.3.0 2025-02-20
We are thrilled to announce the release of version 0.3.0 of our project! This update brings further enhancements aimed at improving both the usability and functionality of the project.

 Key Changes:

 1. Comprehensive Website Update

The website has been fully updated to offer a more immersive and user-friendly experience. Notably, we’ve introduced a new feature to Stay on Page, which allows you to seamlessly switch between different languages without losing your place. Additionally, we’ve enhanced the rendering of mathematical formulas, ensuring that equations are displayed correctly a

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON