Murphy's LeetCode 学习计划 📚
目标导向的 LeetCode 刷题计划 - 系统性学习算法与数据结构,五天刷题,两天总结。
🎯 学习目标
- 🏆 短期目标:完成 LeetCode 前 100 道经典题目
- 🚀 中期目标:掌握所有主流算法模式,完成 300+ 题目
- 💼 长期目标:具备解决复杂算法问题的能力,为技术面试做好准备
📅 学习节奏
基础算法精讲·题目汇总-灵茶山艾府 [0x3F]-github/EndlessCheng
周计划安排
📊 一周七天学习安排
├── 周一至周五 (刷题日) 🔥
│ ├── 每日 2-3 道题目
│ ├── 重点练习不同难度题目
│ └── 及时记录解题思路
└── 周六至周日 (总结日) 📝
├── 整理本周题目笔记
├── 复习相关算法模式
└── 总结易错点和优化方案
🗂️ 题目分类进度
当前已完成题目 ✅
🟢 Easy (简单题)
- [x] 0001 - 两数之和
数组
哈希表
- [x] 0009 - 回文数
数学
字符串
- [x] 0013 - 罗马数字转整数
哈希表
数学
字符串
- [x] 0014 - 最长公共前缀
字符串
- [x] 0020 - 有效的括号
栈
字符串
- [x] 0027 - 移除元素
数组
双指针
- [x] 0028 - 找出字符串中第一个匹配项的下标
双指针
字符串
字符串匹配
- [x] 0035 - 搜索插入位置
数组
二分查找
- [x] 0058 - 最后一个单词的长度
字符串
- [x] 0066 - 加一
数组
数学
- [x] 0067 - 二进制求和
位运算
数学
字符串
模拟
- [x] 0069 - x 的平方根
数学
二分查找
牛顿迭代
- [x] 0070 - 爬楼梯
记忆化搜索
数学
动态规划
- [x] 0088 - 合并两个有序数组
数组
双指针
排序
🟡 Medium (中等题)
- [x] 0628 - 三个数的最大乘积
数组
数学
排序
当前进度统计: - ✅ 已完成:15 题 - 🟢 Easy:14 题 - 🟡 Medium:1 题 - 🔴 Hard:0 题
🎓 学习方法论
解题流程标准化
- 📖 理解题意 (5min)
- 仔细阅读题目描述
- 分析输入输出格式
-
理解约束条件
-
🧠 思路分析 (10min)
- 识别问题类型和算法模式
- 考虑多种解法
-
估算时间空间复杂度
-
💻 编码实现 (15min)
- 选择最优解法编码
- 注意边界条件处理
-
保持代码简洁可读
-
🧪 测试验证 (5min)
- 用示例数据验证
- 考虑极端情况
-
确保逻辑正确
-
📝 总结反思 (5min)
- 记录解题思路
- 分析时空复杂度
- 思考优化空间
知识体系构建
算法知识体系
├── 基础数据结构
│ ├── 数组与字符串 ✅
│ ├── 链表 🔄
│ ├── 栈与队列 🔄
│ └── 哈希表 ✅
├── 高级数据结构
│ ├── 二叉树 ⏳
│ ├── 堆 ⏳
│ └── 图 ⏳
├── 算法思想
│ ├── 双指针 ✅
│ ├── 滑动窗口 ⏳
│ ├── 递归与分治 🔄
│ ├── 动态规划 🔄
│ ├── 贪心算法 ⏳
│ └── 回溯算法 ⏳
└── 特殊技巧
├── 位运算 🔄
├── 数学技巧 🔄
└── 字符串算法 🔄
图例:✅ 已掌握 | 🔄 学习中 | ⏳ 待学习
🏆 成就系统
已解锁成就 🎖️
- 🥉 初出茅庐:完成前 10 道题目
- 🥈 小有成就:完成前 15 道题目
- 🏃 每日一题:连续刷题 7 天
- 🎯 双指针大师:掌握双指针技巧
待解锁成就 🔒
- 🥇 百题斩:完成 100 道题目 (15/100)
- 🔥 连击达人:连续刷题 30 天 (7/30)
- 🧠 算法专家:掌握 10 种算法模式 (4/10)
- 💎 困难克星:完成 10 道 Hard 题目 (0/10)
📊 数据分析
月度统计
九月份学习数据统计
├── 总题数:15 题
├── 平均每日:0.75 题
├── Easy:14 题 (93.3%)
├── Medium:1 题 (6.7%)
├── Hard:0 题 (0%)
└── 主要算法:双指针、哈希表、字符串
🤝 学习资源
参考资料
- 📚 《剑指Offer》
- 📺 代码随想录
- 📖 LeetCode 官方题解
工具推荐
- 💻 IDE:Visual Studio Code + C++ Extension
- 📝 笔记:MkDocs + Material Theme
- 📊 进度跟踪:GitHub Issues + Projects
- 🔄 版本控制:Git + GitHub Actions
💡 学习心得
经验总结
- 坚持规律:每日固定时间刷题,养成习惯
- 质量优于数量:深入理解每道题,举一反三
- 及时总结:周末整理思路,加深印象
- 循序渐进:从Easy开始,逐步挑战难题
易错点提醒
- ⚠️ 边界条件:数组越界、空指针判断
- ⚠️ 整数溢出:大数运算需要特别注意
- ⚠️ 时间复杂度:避免暴力解法,寻求最优解
- ⚠️ 空间优化:能用 O(1) 就不用 O(n)
📞 联系方式
- 🐙 GitHub: murphyhoucn
- 📝 博客: 在线文档
最后更新时间:2025年9月29日
💪 今日格言:算法之路虽长,但每一步都算数!Keep coding, keep growing!