Skip to content

从零基础 Python 到企业笔试机试的系统性LeetCode100刷题指南

Notifications You must be signed in to change notification settings

ranxi2001/zero2Leetcode

Repository files navigation

Zero2Leetcode 🚀

从零基础 Python 到企业笔试机试的系统性刷题指南

Python LeetCode License

开始学习题目列表在线练习


📖 项目简介

本项目专为计算机专业求职者设计,帮助你从 Python 零基础到能够独立解决 LeetCode 中等难度题目,顺利通过企业笔试机试第一关。

🎯 目标用户

  • ✅ Python 语言零基础或仅掌握基础语法
  • ✅ 准备校招/社招笔试机试
  • ✅ 目标通过 LeetCode Medium 难度

⏱️ 学习周期

建议 8-12 周,每天投入 2-3 小时


🗺️ 学习路线

┌─────────────┐    ┌─────────────┐    ┌─────────────┐    ┌─────────────┐
│  Python     │───▶│   数据结构   │───▶│   核心算法   │───▶│  LeetCode   │
│  基础语法    │    │   掌握       │    │   突破       │    │  实战       │
│  (1-2周)    │    │   (2-3周)    │    │   (3-4周)    │    │  (2-3周)    │
└─────────────┘    └─────────────┘    └─────────────┘    └─────────────┘

阶段一:Python 基础 (1-2 周) ./00_python_basics/

模块 知识点 重要程度
变量与类型 int, float, str, bool, None ⭐⭐⭐⭐⭐
控制流 if/elif/else, for, while, break, continue ⭐⭐⭐⭐⭐
函数 def, 参数, 返回值, lambda, 作用域 ⭐⭐⭐⭐⭐
集合类型 list, dict, set, tuple ⭐⭐⭐⭐⭐
面向对象 class, 继承, __init__, __str__ ⭐⭐⭐

阶段二:数据结构 (2-3 周) ./01_data_structures/

数据结构 核心操作 刷题重点
数组 遍历, 双指针, 原地操作 ⭐⭐⭐⭐⭐
字符串 滑动窗口, 回文判断 ⭐⭐⭐⭐⭐
链表 指针操作, 虚拟头节点, 反转 ⭐⭐⭐⭐
栈/队列 LIFO/FIFO, 单调栈 ⭐⭐⭐⭐
哈希表 O(1)查找, 去重, 计数 ⭐⭐⭐⭐⭐
前中后序遍历, 层序遍历 ⭐⭐⭐⭐⭐
TopK 问题, 优先队列 ⭐⭐⭐
邻接表, DFS/BFS ⭐⭐⭐

阶段三:核心算法 (3-4 周) ./02_algorithms/

算法 核心思想 难度
排序 快排, 归并, 堆排序 ⭐⭐
二分查找 边界处理, 变体题 ⭐⭐⭐
双指针 对撞指针, 快慢指针 ⭐⭐
滑动窗口 动态维护区间 ⭐⭐⭐
递归/回溯 状态树, 剪枝 ⭐⭐⭐⭐
BFS/DFS 层序/深度搜索 ⭐⭐⭐
动态规划 状态定义, 转移方程 ⭐⭐⭐⭐⭐
贪心 局部最优→全局最优 ⭐⭐⭐

阶段四:LeetCode 实战 (2-3 周) ./03_leetcode_practice/

主攻 LeetCode Hot 100,覆盖面试高频题


🔥 LeetCode Hot 100

点击题号直接跳转 LeetCode 官方练习!

哈希表 (5题)

# 题目 难度 本地题解
1 两数之和 🟢 Easy solution
49 字母异位词分组 🟡 Medium solution
128 最长连续序列 🟡 Medium solution

双指针 (4题)

# 题目 难度 本地题解
11 盛最多水的容器 🟡 Medium solution
15 三数之和 🟡 Medium solution
42 接雨水 🔴 Hard solution

滑动窗口 (4题)

# 题目 难度 本地题解
3 无重复字符的最长子串 🟡 Medium solution
76 最小覆盖子串 🔴 Hard solution
438 找到字符串中所有字母异位词 🟡 Medium solution

子串/子数组 (6题)

# 题目 难度 本地题解
53 最大子数组和 🟡 Medium solution
56 合并区间 🟡 Medium solution
560 和为 K 的子数组 🟡 Medium solution

栈 (6题)

# 题目 难度 本地题解
20 有效的括号 🟢 Easy solution
155 最小栈 🟡 Medium solution
394 字符串解码 🟡 Medium solution
739 每日温度 🟡 Medium solution
84 柱状图中最大的矩形 🔴 Hard solution

链表 (9题)

# 题目 难度 本地题解
206 反转链表 🟢 Easy solution
21 合并两个有序链表 🟢 Easy solution
141 环形链表 🟢 Easy solution
142 环形链表 II 🟡 Medium solution
160 相交链表 🟢 Easy solution
19 删除链表的倒数第 N 个结点 🟡 Medium solution
24 两两交换链表中的节点 🟡 Medium solution
25 K 个一组翻转链表 🔴 Hard solution
148 排序链表 🟡 Medium solution

二叉树 (15题)

# 题目 难度 本地题解
94 二叉树的中序遍历 🟢 Easy solution
104 二叉树的最大深度 🟢 Easy solution
226 翻转二叉树 🟢 Easy solution
101 对称二叉树 🟢 Easy solution
543 二叉树的直径 🟢 Easy solution
102 二叉树的层序遍历 🟡 Medium solution
108 将有序数组转换为BST 🟢 Easy solution
98 验证二叉搜索树 🟡 Medium solution
230 BST中第K小的元素 🟡 Medium solution
199 二叉树的右视图 🟡 Medium solution
114 二叉树展开为链表 🟡 Medium solution
105 从前序与中序遍历序列构造二叉树 🟡 Medium solution
437 路径总和 III 🟡 Medium solution
236 二叉树的最近公共祖先 🟡 Medium solution
124 二叉树中的最大路径和 🔴 Hard solution

图论 (5题)

# 题目 难度 本地题解
200 岛屿数量 🟡 Medium solution
994 腐烂的橘子 🟡 Medium solution
207 课程表 🟡 Medium solution
208 实现 Trie (前缀树) 🟡 Medium solution

回溯 (7题)

# 题目 难度 本地题解
46 全排列 🟡 Medium solution
78 子集 🟡 Medium solution
17 电话号码的字母组合 🟡 Medium solution
39 组合总和 🟡 Medium solution
22 括号生成 🟡 Medium solution
79 单词搜索 🟡 Medium solution
131 分割回文串 🟡 Medium solution
51 N 皇后 🔴 Hard solution

二分查找 (5题)

# 题目 难度 本地题解
35 搜索插入位置 🟢 Easy solution
74 搜索二维矩阵 🟡 Medium solution
34 在排序数组中查找元素的第一个和最后一个位置 🟡 Medium solution
33 搜索旋转排序数组 🟡 Medium solution
153 寻找旋转排序数组中的最小值 🟡 Medium solution

动态规划 (15题)

# 题目 难度 本地题解
70 爬楼梯 🟢 Easy solution
118 杨辉三角 🟢 Easy solution
198 打家劫舍 🟡 Medium solution
279 完全平方数 🟡 Medium solution
322 零钱兑换 🟡 Medium solution
139 单词拆分 🟡 Medium solution
300 最长递增子序列 🟡 Medium solution
152 乘积最大子数组 🟡 Medium solution
416 分割等和子集 🟡 Medium solution
32 最长有效括号 🔴 Hard solution
62 不同路径 🟡 Medium solution
64 最小路径和 🟡 Medium solution
5 最长回文子串 🟡 Medium solution
1143 最长公共子序列 🟡 Medium solution
72 编辑距离 🟡 Medium solution

贪心/其他 (8题)

# 题目 难度 本地题解
121 买卖股票的最佳时机 🟢 Easy solution
55 跳跃游戏 🟡 Medium solution
45 跳跃游戏 II 🟡 Medium solution
763 划分字母区间 🟡 Medium solution
136 只出现一次的数字 🟢 Easy solution
169 多数元素 🟢 Easy solution
75 颜色分类 🟡 Medium solution
31 下一个排列 🟡 Medium solution
287 寻找重复数 🟡 Medium solution

堆 (4题)

# 题目 难度 本地题解
215 数组中的第K个最大元素 🟡 Medium solution
347 前 K 个高频元素 🟡 Medium solution
295 数据流的中位数 🔴 Hard solution

矩阵 (4题)

# 题目 难度 本地题解
73 矩阵置零 🟡 Medium solution
54 螺旋矩阵 🟡 Medium solution
48 旋转图像 🟡 Medium solution
240 搜索二维矩阵 II 🟡 Medium solution

📁 项目结构

zero2Leetcode/
├── README.md                    # 项目说明
├── index.html                   # 🌐 前端学习平台入口
├── requirements.txt             # Python 依赖
│
├── 00_python_basics/            # Python 基础
├── 01_data_structures/          # 数据结构
├── 02_algorithms/               # 核心算法
├── 03_leetcode_practice/        # LeetCode 实战
│   ├── hash/                    # 哈希表
│   ├── two_pointers/            # 双指针
│   ├── sliding_window/          # 滑动窗口
│   ├── stack/                   # 栈
│   ├── linked_list/             # 链表
│   ├── tree/                    # 树
│   ├── graph/                   # 图
│   ├── backtrack/               # 回溯
│   ├── binary_search/           # 二分查找
│   ├── dp/                      # 动态规划
│   ├── greedy/                  # 贪心
│   ├── heap/                    # 堆
│   ├── matrix/                  # 矩阵
│   └── other/                   # 其他技巧
│
├── docs/                        # 学习文档
└── assets/                      # 前端静态资源

🚀 快速开始

本地运行

# 克隆项目
git clone https://github.com/yourname/zero2Leetcode.git
cd zero2Leetcode

# 打开前端学习平台
# 直接双击 index.html 或使用 Live Server

# 运行 Python 示例
python 00_python_basics/01_variables_types/concepts.py

在线练习

所有题解都链接到 LeetCode 官方,点击表格中的题目名称即可跳转在线练习!

👉 推荐学习计划: LeetCode 力扣 Hot 100 官方题单


💡 学习建议

  1. 循序渐进: 按阶段学习,不要跳跃
  2. 动手为先: 每道题先自己尝试 15-30 分钟
  3. 理解模板: 掌握每类题型的解题模板
  4. 重复练习: 做错的题目隔 3-5 天重做
  5. 总结归纳: 建立自己的错题本和模板库

📝 License

MIT License © 2026


🌟 如果对你有帮助,请点个 Star!

About

从零基础 Python 到企业笔试机试的系统性LeetCode100刷题指南

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published