算法通关手册(LeetCode)
01. 项目简介
-
「算法与数据结构」 基础知识的讲解教程,「LeetCode」800+ 道题目的详细解析。本项目易于理解,没有大跨度的思维跳跃,项目中使用部分图示、例子来帮助理解。
-
本教程先从基础的数据结构和算法开始讲解,再针对不同分类的数据结构和算法,进行具体题目的讲解分析。让读者可以通过「算法基础理论学习」和「编程实战学习」相结合的方式,彻底的掌握算法知识。
-
本教程采用 Python 作为编程语言,要求学习者已有基本 Python 程序设计的知识与经验。
02. 项目地址
欢迎右上角 「Star ️ 」 和 「Fork」,这是对我最大的鼓励和支持。
- GitHub 地址:https://github.com/itcharge/LeetCode-Py
支持黑暗模式的在线电子书《算法通关手册》。
- 电子书地址:https://algo.itcharge.cn
03. 关于作者
我是一名 iOS / macOS 的开发程序员,另外也是北航软院的一名非全硕士(在读)。曾在大学期间学习过算法知识,并参加过 3 年的 ACM 比赛, 但水平有限,未能取得理想成绩。但是这 3 年的 ACM 经历,给我最大的收获是锻炼了自己的逻辑思维和解决实际问题的能力,这种能力为我今后的工作、学习打下了坚实的基础。
我从 2021 年 03 月 30 日开始每日在 LeetCode 刷题,到 2022 年 06 月 08 日已经刷了 1000+ 道题目,并且完成了 800+ 道题解。努力向着 1000+、1500+、2000+ 道题解前进。
在公众号 「程序员充电站」 里回复 "算法打卡",拉你进 LeetCode 算法打卡计划群一起组队打卡。
- 进群暗号:算法打卡
- 进群要求:少闲聊、多分享、改备注。
04. 版权说明
- 本教程采用 知识署名—非商业性使用—禁止演绎(BY-NC-ND)4.0 协议国际许可协议 进行许可。
- 本教程题解中的所有题目版权均归 LeetCode 和 力扣中国 所有。
05. 章节目录
00. 绪论
- 算法与数据结构
- 算法复杂度
- LeetCode 入门与攻略
- LeetCode 题解(字典序排序,850+ 道题解)
- LeetCode 题解(按分类排序,推荐刷题列表 ★★★)
- LeetCode 面试最常考 100 题(按分类排序)
- LeetCode 面试最常考 200 题(按分类排序)
01. 数组
- 数组基础知识
- 数组排序算法
- 冒泡排序
- 选择排序
- 插入排序
- 希尔排序
- 归并排序
- 快速排序
- 堆排序
- 计数排序
- 桶排序
- 基数排序
- 数组排序题目
- 二分查找
- 二分查找知识(一)
- 二分查找知识(二)
- 二分查找题目
- 数组双指针
- 数组滑动窗口
02. 链表
03. 堆栈
04. 队列
05. 哈希表
06. 字符串
- 字符串基础知识
- 单模式串匹配
- Brute Force 算法
- Rabin Karp 算法
- KMP 算法
- Boyer Moore 算法
- Horspool 算法
- Sunday 算法
- 单模式串匹配题目
- 多模式串匹配
- 字典树知识
- 字典树题目
- AC 自动机知识
- AC 自动机题目
- 后缀数组知识
- 后缀数组题目
07. 树
- 二叉树
- 树与二叉树基础知识
- 二叉树的遍历知识
- 二叉树的遍历题目
- 二叉树的还原知识
- 二叉树的还原题目
- 二叉搜索树
- 线段树
- 树状数组
- 并查集
08. 图论
- 图的基础知识
- 图的遍历
- 图的深度优先搜索知识
- 图的深度优先搜索题目
- 图的广度优先搜索知识
- 图的广度优先搜索题目
- 图的拓扑排序知识
- 图的拓扑排序题目
- 图的生成树
- 最短路径
- 单源最短路径知识(一)
- 单源最短路径知识(二)
- 单源最短路径题目
- 多源最短路径知识
- 多源最短路径题目
- 次短路径知识
- 次短路径题目
- 差分约束系统知识
- 差分约束系统题目
- 二分图
- 二分图基础知识
- 二分图基础题目
- 二分图最大匹配知识
- 匈牙利算法
- Hopcroft-Karp 算法
- 二分图最大匹配题目
09. 基础算法
- 枚举算法
- 递归算法
- 分治算法
- 回溯算法
- 贪心算法
- 位运算
10. 动态规划
- 动态规划基础
- 记忆化搜索
- 线性 DP
- 线性 DP 知识(一)
- 线性 DP 知识(二)
- 线性 DP 题目
- 背包问题
- 背包问题知识(一)
- 背包问题知识(二)
- 背包问题知识(三)
- 背包问题知识(四)
- 背包问题知识(五)
- 背包问题题目
- 区间 DP
- 树形 DP
- 状态压缩 DP
- 计数 DP
- 数位 DP
- 概率 DP
- 动态规划优化
- 单调栈 / 优先队列优化
- 斜率优化
- 四边形不等式优化
- 动态规划优化题目
11. 附加内容
12. LeetCode 题解(已完成 860 道)