推荐资源
书籍推荐
算法与数据结构
| 书籍 | 语言 | 评价 |
|---|---|---|
| Algorithms, 4th Edition (Sedgewick) | Java | 经典教材,配有 Coursera 课程 |
| Data Structures and Algorithms in Java | Java | 系统全面 |
| 算法导论 (CLRS) | 伪代码 | 理论严谨,较难 |
面试准备
| 书籍 | 评价 |
|---|---|
| Cracking the Coding Interview | 必读,6th Edition |
| Programming Interviews Exposed | 入门,适合热身 |
| Elements of Programming Interviews | 较难,高阶 |
系统设计
| 书籍 | 评价 |
|---|---|
| System Design Interview | 详解 13 道系统设计题 |
| Designing Data-Intensive Applications | 分布式系统经典 |
刷题平台
LeetCode(推荐)
- 网址: https://leetcode.com/
- 优点: 题库全面,讨论区质量高
- 建议: 订阅会员解锁全部题目(值得)
其他平台
| 平台 | 特点 |
|---|---|
| HackerRank | 入门友好 |
| TopCoder | 算法竞赛 |
| Codeforces | 竞赛风格 |
| Codility | 训练营形式 |
| Geeks for Geeks | 题解丰富 |
中国平台
| 平台 | 特点 |
|---|---|
| 剑指 Offer | 面试高频题 |
| 牛客网 | 模拟面试 |
视频教程
算法课程
| 课程 | 来源 | 评价 |
|---|---|---|
| Algorithms I/II (Sedgewick) | Coursera | 经典,配合书籍 |
| MIT 6.006 | YouTube | 全面深入 |
| CSE373 (Skiena) | YouTube | 讲解清晰 |
面试技巧
| 课程 | 评价 |
|---|---|
| Gayle McDowell - Cracking the Coding Interview | 作者亲讲 |
| Tushar Roy 刷题讲解 | 步骤详细 |
| Nick White LeetCode 讲解 | 简洁高效 |
Mock 面试平台
| 平台 | 类型 | 特点 |
|---|---|---|
| Pramp | P2P 互评 | 免费 |
| interviewing.io | 匿名真人 | 高级工程师 |
| Gainlo | 大厂员工 | 一对一 |
| Meetapro | 专业教练 | FAANG 教练 |
其他工具
Flashcards(记忆卡片)
- Anki - 间隔重复记忆
- jwasham 的卡片库 - 包含在他的仓库中
白板练习
- 实体白板
- Repl.it - 在线白板
学习建议
推荐刷题顺序
- 必刷高频题(LeetCode Top 100 Liked)
- 按标签分类刷(数组、链表、树等)
- 按难度递增(Easy → Medium → Hard)
时间分配
| 阶段 | 时间 | 内容 |
|---|---|---|
| 基础 | 2-4 周 | 熟悉数据结构与算法 |
| 强化 | 4-8 周 | 大量刷题,总结模式 |
| 模拟 | 2-4 周 | Mock 面试,复盘总结 |
复盘模板
markdown
## 题目: [名称]
- **难度**: Easy/Medium/Hard
- **链接**: LeetCode 链接
- **第一反应**: 拿到题目的初步思路
- **正确思路**: 关键数据结构和算法
- **复杂度**: 时间/空间复杂度
- **教训**: 这次做错/做慢的原因
- **代码**: 核心实现