## 飞蟒微课堂Python面试专项课程启动——LeetCode刷题计划

Author：flypython | Date: 2020-01-02 | Category： 飞蟒微课堂 LeetCode

## LeetCode刷题计划

我至今面试过几百人，发现很多候选人基础确实有不少的问题，尤其是转专业的同学。

大多数的公司面试工程师时都会考察这几个方面，

- 数据结构与算法，一般为leetcode题目
- 简历上的项目探讨与深入研究
- 业务场景设计题

按照不同的职位，会增加相应的内容。比如算法工程师，会问机器学习与深度学习算法，如果有paper和比赛，也会问一些。但是一般前两轮都是数据结构和算法，所以数据结构与算法是敲门砖，希望同学们能在这方面多下些功夫。

Python面试专项课程分为两部分，一是刷leetcode，二是公司面试真题。完整的题解目录请在FlyPython公众号菜单上查看，这次主要介绍leetcode，面试真题后面会有具体的介绍。

那怎么刷LeetCode呢？你可以根据自己的实际情况来决定，如果时间充裕可以通过题型来分类，每个题型都刷10题左右。如果时间紧张，建议刷热门题和公司题库，提高命中率。你也可以每周参加leetcode的周赛，来维持手感。

真正做到bug free，确实很难，有的时候刷2-3遍也不行，得多做变型题，多想多总结，不断积累基础就变扎实了。难度以中等为主，兼顾hard。

这次的LeetCode刷题计划，是以leetcode中文站的精选TOP面试题为基础的，题目共145道，希望对同学们有帮助。

- 题目链接： https://leetcode-cn.com/problemset/top/
- 题解总目录： http://flypython.com/leetcode/
- leetcode主页: https://leetcode-cn.com/u/flypython/

## 附：LeetCode练手题

还没有注册LeetCode的同学，先去注册一个并完成下面的的练手题。还没有关注FlyPython的同学长按最后的二维码关注我吧。

#### LCP 1. 猜数字

链接：https://leetcode-cn.com/problems/guess-numbers/
难度：简单

#### 题目

> 小A 和 小B 在玩猜数字。小B 每次从 1, 2, 3 中随机选择一个，小A 每次也从 1, 2, 3 中选择一个猜。他们一共进行三次这个游戏，请返回 小A 猜对了几次？

> 输入的guess数组为 小A 每次的猜测，answer数组为 小B 每次的选择。guess和answer的长度都等于3。

> 示例 1：

> 输入：guess = [1,2,3], answer = [1,2,3]
> 输出：3
> 解释：小A 每次都猜对了。

> 示例 2：

> 输入：guess = [2,2,3], answer = [3,2,1]
> 输出：1
> 解释：小A 只猜对了第二次。

> 限制：

> guess的长度 = 3
> answer的长度 = 3
> guess的元素取值为 {1, 2, 3} 之一。
> answer的元素取值为 {1, 2, 3} 之一。

#### 题解

leetcode最简单的练手题，可以循环比较计数，也可以直接三个元素比较。

#### 解法