Skip to content

Repository files navigation

🚀 LeetCode Hot100 算法学习课程

📖 课程简介

欢迎来到LeetCode Hot100算法学习课程!这是一个专为算法学习者设计的完整课程体系,涵盖了LeetCode最热门的100道题目,按算法类别进行分类训练,使用ACM输入格式,并融入了丰富的趣味性元素。

🎯 课程特色

  • 📚 系统性学习: 按算法类别分专题,循序渐进
  • 🎮 趣味性设计: 游戏化学习体验,RPG闯关模式
  • 💻 ACM格式: 标准竞赛输入输出格式
  • 🔧 实用工具: 丰富的模板和调试工具
  • 📊 可视化: 算法过程动态演示
  • 🏆 成就系统: 激励式学习进度追踪

🗺️ 课程地图

📁 专题结构

leetcode_hot100_course/
├── 01_array_string/          # 数组与字符串 (基础必修)
├── 02_linked_list/           # 链表 (指针操作)
├── 03_stack_queue/           # 栈与队列 (线性结构)
├── 04_tree_graph/            # 树与图 (非线性结构)
├── 05_dynamic_programming/   # 动态规划 (核心算法)
├── 06_backtracking/          # 回溯算法 (搜索策略)
├── 07_greedy/               # 贪心算法 (优化策略)
├── 08_binary_search/        # 二分查找 (搜索优化)
├── 09_math_bit/             # 数学与位运算 (技巧专题)
├── 10_advanced/             # 高级算法 (进阶挑战)
├── tools/                   # 工具集合
├── tests/                   # 测试用例
└── README.md               # 课程总览

🎯 专题详情

专题 难度 题目数 核心技能 预计时间
01_数组与字符串 ⭐⭐ 15题 双指针、滑动窗口 1周
02_链表 ⭐⭐ 10题 指针操作、递归 1周
03_栈与队列 ⭐⭐⭐ 8题 单调栈、优先队列 1周
04_树与图 ⭐⭐⭐ 20题 DFS、BFS、树遍历 2周
05_动态规划 ⭐⭐⭐⭐ 15题 状态转移、最优子结构 2周
06_回溯算法 ⭐⭐⭐ 8题 递归、剪枝 1周
07_贪心算法 ⭐⭐⭐ 10题 局部最优、证明 1周
08_二分查找 ⭐⭐⭐ 8题 边界处理、变种 1周
09_数学与位运算 ⭐⭐ 6题 数学技巧、位操作 3天
10_高级算法 ⭐⭐⭐⭐⭐ 10题 综合应用、优化 1周

🎮 趣味学习系统

🏰 RPG闯关模式

每个专题都设计为一个"算法王国",你将扮演一名算法勇士:

  • 🗡️ 新手村: 数组与字符串 (Level 1-15)
  • 🏹 冒险者: 链表、栈队列 (Level 16-35)
  • 🛡️ 勇士: 树图、动态规划 (Level 36-70)
  • ⚔️ 英雄: 回溯、贪心、二分 (Level 71-90)
  • 👑 传说: 数学位运算、高级算法 (Level 91-100)

🏆 成就系统

  • 🥉 青铜勇士: 完成每个专题的简单题目
  • 🥈 白银骑士: 完成每个专题的中等题目
  • 🥇 黄金英雄: 完成每个专题的困难题目
  • 💎 钻石大师: 完成所有扩展挑战
  • 🌟 传奇宗师: 自主优化算法并通过性能测试

🛤️ 学习路径

📈 三阶段进阶

🌱 初级阶段 (1-3周)

目标: 掌握基础数据结构和算法思维

  • ✅ 数组与字符串 (双指针、滑动窗口)
  • ✅ 链表 (指针操作、递归思想)
  • ✅ 栈与队列 (LIFO/FIFO思想)

🌿 中级阶段 (4-7周)

目标: 理解核心算法和复杂数据结构

  • ✅ 树与图 (DFS/BFS、树的遍历)
  • ✅ 动态规划 (状态转移、最优子结构)
  • ✅ 回溯算法 (搜索与剪枝)

🌳 高级阶段 (8-10周)

目标: 掌握优化技巧和高级算法

  • ✅ 贪心算法 (局部最优策略)
  • ✅ 二分查找 (搜索优化)
  • ✅ 数学与位运算 (技巧专题)
  • ✅ 高级算法 (综合应用)

📊 可视化学习

每个题目都包含:

  • 🎬 算法动画: 步骤可视化演示
  • 📈 复杂度分析: 时间空间复杂度图表
  • 🔍 调试工具: 中间状态查看
  • 📝 思路导图: 解题思路梳理

📖 使用指南

🚀 快速开始

  1. 选择专题: 根据学习路径选择当前专题
  2. 阅读README: 了解专题核心概念和技巧
  3. 学习模板: 掌握该专题的通用模板
  4. 刷题实战: 按难度递进完成题目
  5. 总结复盘: 整理笔记和易错点

💡 学习建议

  • 🎯 目标导向: 每天设定明确的学习目标
  • ⏰ 时间管理: 建议每天1-2小时,保持连续性
  • 🔄 循环复习: 定期回顾已学内容,加深印象
  • 💬 交流讨论: 加入学习群组,分享心得体会
  • 📝 笔记整理: 记录重点知识和解题技巧

🎮 趣味学习方式

  • 🏆 闯关模式: 每个专题都有难度递进的题目
  • 🎯 挑战任务: 特殊的算法挑战
  • 📈 进度追踪: 记录学习进度
  • 💡 思路提示: 渐进式提示系统
  • 🔧 模板代码: 常用算法模板

📊 学习进度追踪

🎯 个人仪表板

🏆 当前等级: 🗡️ 算法新手 (Level 1)
📈 完成题目: 0/100
📚 当前专题: 准备开始
🔥 连续刷题: 0天
⏰ 总学习时间: 0小时
🎖️ 获得成就: 0个

📈 专题完成度

专题 进度 状态
数组与字符串 ░░░░░░░░░░ 0% 🔒 未开始
链表 ░░░░░░░░░░ 0% 🔒 未开始
栈与队列 ░░░░░░░░░░ 0% 🔒 未开始
树与图 ░░░░░░░░░░ 0% 🔒 未开始
动态规划 ░░░░░░░░░░ 0% 🔒 未开始
回溯算法 ░░░░░░░░░░ 0% 🔒 未开始
贪心算法 ░░░░░░░░░░ 0% 🔒 未开始
二分查找 ░░░░░░░░░░ 0% 🔒 未开始
数学位运算 ░░░░░░░░░░ 0% 🔒 未开始
高级算法 ░░░░░░░░░░ 0% 🔒 未开始

📅 10周学习计划

🗓️ 详细时间安排

周次 专题 学习重点 题目数量 预期成果
Week 1 数组与字符串 双指针、滑动窗口 15题 掌握基础技巧
Week 2 链表 指针操作、递归 10题 理解指针概念
Week 3 栈与队列 单调栈、优先队列 8题 掌握线性结构
Week 4-5 树与图 DFS、BFS、遍历 20题 理解非线性结构
Week 6-7 动态规划 状态转移、最优化 15题 掌握核心算法
Week 8 回溯算法 搜索、剪枝 8题 理解搜索策略
Week 9 贪心+二分 局部最优、搜索 18题 掌握优化技巧
Week 10 综合复习 数学+高级算法 16题 综合应用能力

📚 学习资源

  • 📖 理论学习: 《算法导论》、《剑指Offer》
  • 💻 在线平台: LeetCode、牛客网、洛谷
  • 🎥 视频教程: B站算法课程、YouTube教程
  • 📝 笔记工具: Notion、Obsidian、Typora

🔧 开发环境

  • IDE推荐: VSCode、PyCharm、IntelliJ IDEA
  • 调试工具: Python Debugger、GDB
  • 性能分析: cProfile、Valgrind
  • 可视化: Matplotlib、Graphviz、算法可视化网站

🤝 社区交流

💬 学习群组

  • GitHub: 提交代码、分享解题思路
  • 技术论坛: 力扣中国、牛客网讨论区
  • 学习社群: 算法学习QQ群、微信群

📝 学习分享

  • 个人博客: 记录学习心得和解题思路
  • 技术文章: 发布到掘金、CSDN、知乎
  • 代码仓库: GitHub开源学习笔记

📝 使用说明

  1. 每个专题文件夹包含:

    • problems/ - 题目文件
    • solutions/ - 解答代码
    • templates/ - 算法模板
    • notes.md - 学习笔记
  2. 题目格式:

    • 使用ACM输入格式
    • 包含完整的输入输出示例
    • 提供多种解法
  3. 学习建议:

    • 先理解算法原理
    • 独立思考解题思路
    • 参考模板代码
    • 总结解题经验

🚀 开始学习

建议按照以下顺序学习:

  1. 数组与字符串 → 2. 链表 → 3. 栈与队列 → 4. 树与图 → 5. 搜索算法 → 6. 动态规划 → 7. 贪心算法 → 8. 排序与查找 → 9. 数学与位运算 → 10. 其他经典算法

每个专题预计学习时间:3-5天


🌟 准备好开始你的算法学习之旅了吗?每一道题都是通往算法大师的阶梯!

💪 记住:坚持每天刷题,量变引起质变!

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages