Appearance
序言
关于本书
这是《LeetCode 算法通关之路》系列的第六册——算法竞赛实战篇。
恭喜你来到这里!如果你已经完成了前五册的学习,你已经是一名优秀的算法工程师。本书将带你冲击更高的目标——算法竞赛和顶级大厂面试。
前置要求
学习本书前,你需要具备:
- ✅ 完整学习前五册内容
- ✅ 扎实的动态规划能力(第三册)
- ✅ 熟练的图论基础(第四册)
- ✅ 了解高级数据结构(第五册)
- ✅ 良好的数学基础
本书是整套丛书的终点,不建议跳过前面直接学习。
本书内容
本书涵盖算法竞赛的核心内容:
| 章节 | 内容 | 难度 |
|---|---|---|
| 数论与数学 | 质数、模运算、欧拉函数、快速幂 | ⭐⭐⭐ |
| 组合数学 | 排列组合、卡特兰数、容斥原理 | ⭐⭐⭐⭐ |
| 高级博弈论 | SG 函数、Nim 变种、组合博弈 | ⭐⭐⭐⭐ |
| 网络流 | 最大流、最小割、费用流 | ⭐⭐⭐⭐⭐ |
| 网络流应用 | 上下界流、闭合子图、路径覆盖 | ⭐⭐⭐⭐⭐ |
| 计算几何基础 | 向量、凸包、旋转卡壳 | ⭐⭐⭐⭐ |
| 计算几何进阶 | 半平面交、Voronoi 图 | ⭐⭐⭐⭐⭐ |
| 字符串高级 | AC 自动机、回文自动机 | ⭐⭐⭐⭐⭐ |
| 竞赛真题 | LeetCode、Codeforces、ACM-ICPC | 实战 |
| 大厂面试 | 字节、腾讯、Google、Meta | 实战 |
| 竞赛策略 | 时间管理、Rating 提升 | 经验 |
本书特色
1. 网络流完整覆盖
从第四册移入的网络流内容,在这里有完整的 20 章覆盖。
2. 博弈论进阶
与第三册的博弈 DP 形成进阶关系,深入 SG 函数和组合博弈。
3. 真题实战
覆盖 LeetCode、Codeforces、Google、ACM-ICPC 等各类真题。
4. 大厂面试专题
字节跳动、腾讯、阿里、Google、Meta 等大厂算法面试精选。
本书在丛书中的位置
第一册 → 第二册 → 第三册 → 第四册 → 第五册 → [第六册]
数据结构 算法技巧 动态规划 图论搜索 高级结构 算法竞赛
基础 篇 精通篇 篇 篇 实战篇知识关联图
┌─────────────────┐
│ 第六册内容 │
└────────┬────────┘
│
┌────────────────────┼────────────────────┐
│ │ │
┌────┴────┐ ┌────┴────┐ ┌────┴────┐
│数论/组合│ │网络流 │ │计算几何│
│ (新内容) │ │(第四册进阶)│ │ (新内容) │
└─────────┘ └─────────┘ └─────────┘
│ │ │
┌────┴────┐ ┌────┴────┐
│博弈论进阶│ │高级字符串│
│(第三册进阶)│ │(第五册进阶)│
└─────────┘ └─────────┘目标读者
本书适合:
- 🎯 准备冲击大厂算法岗的候选人
- 🎯 算法竞赛选手(NOIP、省赛、区域赛)
- 🎯 追求极致的算法爱好者
- 🎯 已完成前五册学习的读者
学习建议
- 选择性学习:根据目标选择章节,不必全学
- 大厂面试:重点学习数论基础、网络流建模、大厂面试专题
- 算法竞赛:全书都要学习,重点是计算几何和高级字符串
- 多刷真题:本书最后三部分是实战的重中之重
Rating 提升路线
如果你的目标是 Codeforces Rating:
| 当前 Rating | 目标 Rating | 需要重点学习 |
|---|---|---|
| < 1200 | 1200-1400 | 前五册内容 |
| 1200-1400 | 1400-1600 | 数论基础、组合数学 |
| 1400-1600 | 1600-1900 | 本书 1-3 部分 |
| 1600-1900 | 1900-2100 | 本书全部基础内容 |
| 1900-2100 | 2100-2400 | 本书全部 + 大量练习 |
结语
这是《LeetCode 算法通关之路》系列的终点,但却是你算法之路的新起点。
算法学习没有终点,只有不断前进的旅程。
希望这套丛书能够帮助你在算法的世界里找到属于自己的位置。
祝你在算法的道路上越走越远!
感谢你的阅读!