百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
L

leetcode

> DevOps
开源

LeetCode Solutions: A Record of My Problem Solving Journey.( leetcode题解,记录自己的leetcode解题之路。)

55.8K stars0 点赞3 次浏览
访问官网GitHub

工具介绍

LeetCode Solutions: A Record of My Problem Solving Journey.( leetcode题解,记录自己的leetcode解题之路。)

LeetCode

简体中文 | English


我们的 slogan 是: 只有熟练掌握基础的数据结构与算法,才能对复杂问题迎刃有余。

我的《算法通关之路》出版了

我的新书《算法通关之路》出版了。

  • 实体版购书链接 1

  • 实体版购书链接 2

  • 电子版购书链接

图片加载不出来如何解决?

https://github.com/fe-lucifer/fanqiang

力扣专属折扣

力扣免费题目已经有了很多经典的了,也覆盖了所有的题型,只是很多公司的真题都是锁定的。个人觉得如果你准备找工作的时候,可以买一个会员。另外会员很多leetbook 也可以看,结合学习计划,效率还是蛮高的。

现在力扣在每日一题基础上还搞了一个 plus 会员挑战,每天刷题可以获得积分,积分可以兑换力扣周边。

如果你要买力扣会员的话,这里有我的专属力扣折扣:https://leetcode.cn/premium/?promoChannel=lucifer (年度会员多送两个月会员,季度会员多送两周会员)

:calendar:《91 天学算法》限时活动

很多教育机构宣传的 7 天,一个月搞定算法面试的,我大概都了解了下,不怎么靠谱。学习算法这东西,还是要靠积累,没有量变是不可能有质变的。还有的人选择看书,这是一个不错的选择。但是很多人选了过时的或者质量差的书,又或者不会去写书中给的练习题,导致效果很差。

基于这几个原因,我组织了一个 91 天刷题活动,通过一个相对比较长的时间(91 天)给出最新的学习路径,并强制大家打卡这种高强度练习来让大家在 91 天后遇见更好的自己。详细活动介绍可以点下方链接查看。另外往期的讲义也在下面了,大家可以看看合不合你的口味。

最后送给大家一句话: 坚持下去,会有突然间成长的一天。

点此参与

  • 活动首页
  • 91 第三期讲义 - 二分专题(上)
  • 91 第三期讲义 - 二分专题(下)

1V1 辅导

如果大家觉得上面的集体活动效率比较低,我目前也接受 1v1 算法辅导,价格根据你的算法基础以及想要学习的内容而定感兴趣的可以加我微信,备注“算法辅导”,微信号 DevelopeEngineer。

:octocat: 仓库介绍

leetcode 题解,记录自己的 leetcode 解题之路。

本仓库目前分为五个部分:

  • 第一个部分是 leetcode 经典题目的解析,包括思路,关键点和具体的代码实现。

  • 第二部分是对于数据结构与算法的总结

  • 第三部分是 anki 卡片, 将 leetcode 题目按照一定的方式记录在 anki 中,方便大家记忆。

  • 第四部分是每日一题,每日一题是在交流群(包括微信和 qq)里进行的一种活动,大家一起 解一道题,这样讨论问题更加集中,会得到更多的反馈。而且 这些题目可以被记录下来,日后会进行筛选添加到仓库的题解模块。

  • 第五部分是计划, 这里会记录将来要加入到以上三个部分内容

:blue_book: 电子书

注意:这里的电子书并不是《算法通关之路》的电子版,而是本仓库内容的电子版!

在线阅读地址

限时免费下载!后期随时可能收费

可以去我的公众号《力扣加加》后台回复电子书获取!

epub 还是有动图的

另外有些内容只在公众号发布,因此大家觉得内容不错的话,可以关注一下。如果再给 ➕ 个星标就更棒啦!

:meat_on_bone: 仓库食用指南

  • 这里有一张互联网公司面试中经常考察的问题类型总结的思维导图,我们可以结合图片中的信息分析一下。

(图片来自 leetcode)

其中算法,主要是以下几种:

  • 基础技巧:分治、二分、贪心
  • 排序算法:快速排序、归并排序、计数排序
  • 搜索算法:回溯、递归、深度优先遍历,广度优先遍历,二叉搜索树等
  • 图论:最短路径、最小生成树
  • 动态规划:背包问题、最长子序列

数据结构,主要有如下几种:

  • 数组与链表:单 / 双向链表
  • 栈与队列
  • 哈希表
  • 堆:最大堆 / 最小堆
  • 树与图:最近公共祖先、并查集
  • 字符串:前缀树(字典树) / 后缀树

我在网上找到一份 《Interview Cheat Sheet》,这个 PDF 列举了面试的模板步骤。,详细指示了如何一步步完成面试。

这个 pdf 开头就提到了好的代码三个标准:

  1. 可读性
  2. 时间复杂度
  3. 空间复杂度

这写的太好了。

紧接着,列举了 15 算法面试的步骤。比如步骤一:当面试官提问完后,你需要先下来关键点(之后再下面写注释和代码) 看完我的感受就是,面试只要按照这个来做,成功率蹭蹭提升

数据结构与算法的总结

  • 数据结构总览

  • 链表专题

  • 树专题

  • 堆专题(上)

  • 堆专题(下)

  • 二分专题(上)

  • 二分专题(下)

  • 动态规划(重置版)

  • 大话搜索

  • 二叉树的遍历

  • 回溯

  • 哈夫曼编码和游程编码

  • 布隆过滤器

  • 前缀树

  • 《日程安排》专题

  • 《构造二叉树》专题

  • 滑动窗口(思路 + 模板)

  • 位运算

  • 小岛问题

  • 最大公约数

  • 并查集

  • 平衡二叉树专题

  • 蓄水池抽样

  • 单调栈

:exclamation: 怎么刷 LeetCode?

  • 我是如何刷 LeetCode 的
  • 算法小白如何高效、快速刷 leetcode?
  • 刷题效率低?或许你就差这么一个插件
  • 力扣刷题插件

:computer: 插件

或许是一个可以改变你刷题效率的浏览器扩展插件。

插件地址:https://chrome.google.com/webstore/detail/leetcode-cheatsheet/fniccleejlofifaakbgppmbbcdfjonle?hl=en-US。

不能访问谷歌商店的朋友可以去我的公众号回复插件获取离线版。强烈推荐大家使用谷歌商店安装, 这样如果有更新可以自动安装,毕竟咱们的插件更新还是蛮快的。

另外大家也可以使用 zerotrac 开发的用于计算力扣中题目分数的网站。这里的分数指的是竞赛分,大家可以根据自己的竞赛分选择稍微比自己竞赛分高一点的题目进行练习,注意这个只是根据通过人数等计算的一个预估分数。地址:https://zerotrac.github.io/leetcode_problem_rating/

精选题解

  • 字典序列删除
  • 一次搞定前缀和
  • 字节跳动的算法面试题是什么难度?
  • 字节跳动的算法面试题是什么难度?(第二弹)
  • 《我是你的妈妈呀》 - 第一期
  • 一文带你看懂二叉树的序列化
  • 穿上衣服我就不认识你了?来聊聊最长上升子序列
  • 你的衣服我扒了 - 《最长公共子序列》
  • 一文看懂《最大子序列和问题》

leetcode 经典题目的解析(200 多道)

这里仅列举具有代表性题目,并不是全部题目

目前更新了 200 多道题解,加上专题涉及的题目,差不多有 300 道。

简单难度题目合集

这里的题目难度比较小, 大多是模拟题,或者是很容易看出解法的题目,另外简单题目一般使用暴力法都是可以解决的。 这个时候只有看一下数据范围,思考下你的算法复杂度就行了。

当然也不排除很多 hard 题目也可以暴力模拟,大家平时多注意数据范围即可。

以下是我列举的经典题目(带 91 字样的表示出自 91 天学算法活动):

  • 面试题 17.12. BiNode

  • 0001. 两数之和

  • 0020. 有效的括号

  • 0021. 合并两个有序链表

  • 0026. 删除排序数组中的重复项

  • 0053. 最大子序和

  • 0066. 加一 91

  • 0088. 合并两个有序数组

  • 0101. 对称二叉树

  • 0104. 二叉树的最大深度

  • 0108. 将有序数组转换为二叉搜索树

  • 0121. 买卖股票的最佳时机

  • 0122. 买卖股票的最佳时机 II

  • 0125. 验证回文串

  • 0136. 只出现一次的数字

  • 0155. 最小栈

  • 0160. 相交链表 91

  • 0167. 两数之和 II 输入有序数组

  • 0169. 多数元素

  • 0172. 阶乘后的零

  • 0190. 颠倒二进制位

  • 0191. 位 1 的个数

  • 0198. 打家劫舍

  • 0203. 移除链表元素

  • 0206. 反转链表

  • 0219. 存在重复元素 II

  • 0226. 翻转二叉树

  • 0232. 用栈实现队列 91

  • 0263. 丑数

  • 0283. 移动零

  • 0342. 4 的幂

  • 0349. 两个数组的交集

  • 0371. 两整数之和

  • 401. 二进制手表

  • 0437. 路径总和 III

  • 0455. 分发饼干

  • 0504. 七进制数

  • 0575. 分糖果

  • 0606. 根据二叉树创建字符串

  • 0661. 图片平滑器

  • 0665. 非递减数列

  • 821. 字符的最短距离 91

  • 0874. 模拟行走机器人

  • 1128. 等价多米诺骨牌对的数量

  • 1260. 二维网格迁移

  • 1332. 删除回文子序列

  • 2591. 将钱分给最多的儿童

中等难度题目合集

中等题目是力扣比例最大的部分,因此这部分我的题解也是最多的。 大家不要太过追求难题,先把中等难度题目做熟了再说。

这部分的题目要不需要我们挖掘题目的内含信息, 将其抽象成简单题目。 要么是一些写起来比较麻烦的题目, 一些人编码能力不行就挂了。因此大家一定要自己做, 即使看了题解 ”会了“,也要自己码一遍。自己不亲自写一遍,里面的细节永远不知道。

以下是我列举的经典题目(带 91 字样的表示出自 91 天学算法活动):

  • 面试题 17.09. 第 k 个数

  • 面试题 17.23. 最大黑方阵

  • 面试题 16.16. 部分排序

  • Increasing Digits

  • Longest Contiguously Strictly Increasing Sublist After Deletion

  • Consecutive Wins

  • Sort-String-by-Flipping

  • Number of Substrings with Single Character Difference

  • Bus Fare

  • Minimum Dropping Path Sum

  • Longest-Matrix-Path-Length

  • Every Sublist Min Sum

  • Maximize the Number of Equivalent Pairs After Swaps

  • 0002. 两数相加

  • 0003. 无重复字符的最长子串

  • 0005. 最长回文子串

  • 0011. 盛最多水的容器

  • 0015. 三数之和

  • 0017. 电话号码的字母组合

  • 0019. 删除链表的倒数第 N 个节点

  • 0022. 括号生成

  • 0024. 两两交换链表中的节点

  • 0029. 两数相除

  • 0031. 下一个排列

  • 0033. 搜索旋转排序数组

  • 0039. 组合总和

  • 0040. 组合总和 II

  • 0046. 全排列

  • 0047. 全排列 II

  • 0048. 旋转图像

  • 0049. 字母异位词分组

  • 0050. Pow(x, n)

  • 0055. 跳跃游戏

  • 0056. 合并区间

  • 0060. 第 k 个排列

  • 0061. 旋转链表 91

  • 0062. 不同路径

  • 0073. 矩阵置零

  • 0075. 颜色分类

  • 0078. 子集

  • 0079. 单词搜索

  • 0080. 删除排序数组中的重复项 II

  • 0086. 分隔链表

  • 0090. 子集 II

  • 0091. 解码方法

  • 0092. 反转链表 II

  • 0094. 二叉树的中序遍历

  • 0095. 不同的二叉搜索树 II

  • [0096. 不同的二叉搜索树](./problems/96.unique-binary-search-trees.

Issues· 13 开放

查看全部 Issues在 GitHub 打开
  • #624

    邀请 leetcode 加入 GithubStarMate,让更多人发现你的作品

    更新于 2026年9月26日
  • #622

    https://GitHub.com/azzouzabdelhak68-ship-it/omni-lang

    更新于 2026年8月28日
  • #621

    【每日一题】- 2020-xx-xx - xxx

    Daily Question更新于 2026年7月6日
  • #608

    a

    Daily Question更新于 2024年10月21日
  • #605

    feat(翻译): xxxxxxx

    国际化更新于 2024年9月29日
  • #219

    1168. 优化村庄水分配

    bughelp wanted更新于 2023年10月30日
  • #171

    【每日一题】- 2019-09-12 - 药不能停

    Daily QuestionLogic更新于 2023年7月26日
  • #574

    【专题】递推方程时间复杂度优化

    专题更新于 2022年11月22日
  • #573

    【专题】 考虑每一项对结果的贡献

    专题更新于 2022年11月18日
  • #572

    【专题】 反向思考

    更新于 2022年11月15日

> 标签

JavaScriptalgoalgorithmalgorithmsalgorithms-datastructures

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月29日
分类DevOps
定价开源

> 相关工具

D
Docker
容器化平台,标准化应用交付
G
GitHub Actions
GitHub 原生 CI/CD 工作流
N
Nginx
高性能 Web 服务器与反向代理