刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!

很多同学反馈在刷LeetCode/LintCode时,总觉得题目太多无从下手,又或者盲目刷题适得其反。

为此,我花了半年时间整理出了这篇LC最强刷题攻略,里面不但有高频题、变形题以及对应题解,就连相关的学习资料都给你整理好了。

这份攻略同时还在Github上开源,绝对硬核,一起来看下去吧!

戳我直达Github开源项目

v2-74b9f8ba6159cb95ea8919edb5d7b28a_b.jpg


为什么写这篇攻略

作为前ACM金牌选手,我曾在知乎上回答过很多关于提高编程能力、提升刷题技巧的问题。回答思路大致根据不同人群的学习阶段进行分组练习:


入门阶段:基本数据类型→判断语句→数组与循环→字符串与循环→栈与队列→简单递归

进阶阶段:链表→二分法→二分答案→相向双指针→宽度优先搜索→二叉树遍历→二叉树&分治法→二叉树搜索树→深度优先搜索→坐标型动态规划→背包型动态规划→匹配型动态规划

根据不同学习阶段,从相对简单的题目刷起,然后逐步提升难度

但我也从大家的反馈中感受到:即便是给你一个完整的刷题路径,对于一个初学小白或者算法老手来说,找到适合自己的题目还需要付出很大的时间成本。

而这篇总结,是想通过最短的时间,将经典的、高频的算法题都做一遍,这样效率才最高。

所以LC最强刷题攻略就诞生了:在分阶段刷题的基础上,对题目类型及所需知识点进行了细化。每一题都是我精心挑选的,也有很多同学反馈跟着这套攻略刷题后,在面试中遇到了原题。所以大家只要按照这个顺序去刷题就对了!

如何使用Lintcode最强刷题攻略

在这套刷题攻略中,目前更新了初级与进阶两个阶段,每一阶段都有理论基础及教学视频讲解,不同于其他干货的纯理论输出,而是加入了项目实战及源码书写的内容。带你完完整整的了解整个知识体系。

对于算法老手来说,这篇攻略是最佳复盘攻略,可以在跳槽前快速过一遍,提高上岸成功率。

这里总结的每一题都是面试高频题/常考知识点,值得大家反复钻研。

多说无益,一起来动手实操吧!

初阶必刷编程50题

阶段一:基本数据类型

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第1张图片


考察类型

没有条件控制,没有循环,单纯的按从上到下的顺序执行代码,例如数学计算,取模等问题。

必刷题目

1.A + B 问题

2.反转一个3位整数

3.计算圆周长和面积

4.巴什博奕

阶段二:判断语句

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第2张图片

考察类型

主要考察选择结构,没有循环,有if,else if,else等判断语句,例如判断闰年等问题

必刷题目

5.判断数字与字母字符

6.闰年

7.大小写转换

8.月份天数

9.简单计算器

10.三数之中的最大值

阶段三:数组与循环

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第3张图片

考察类型

主要考察数组、循环语句,以while、for循环为代码主体的题,不要出现字符串,如数组求和等问题。

必刷题目

11.打印X

12.数组的最大值

13.生成给定大小的数组

14.移动零

15.寻找最大值

16.交换数组两个元素

17.Fizz buzz问题

18.冰雹猜想

19.加一

20.回文数II

21.整数排序

22.寻找素数

23.数组第二大数

24.主元素

25.杨辉三角

26.旋转数组

27.回文数II

28.分解质因数

29.反转字符串中的单词

30.数组剔除元素后的乘积

阶段四:字符串与循环

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第4张图片

考察类型

考察字符串操作,例如判断回文串、求子串等问题

必刷题目

31.旋转字符串

32.回文数

33.大小写转换II

34.最后一个单词的长度

35.最大字母

36.首字母大写

37.转换字符串到整数

38.字符串查找

39.转换成小写字母

40.两字符串和

41.最长单词

阶段五:栈与队列

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第5张图片

考察类型

栈与队列,主要考察栈和队列的特性,调用库来完成题目要求,或简单实现,比如括号匹配等问题

必刷题目

42.小括号匹配

43.有效的括号序列

44.实现栈

45.队列维护

46.二阶阶乘

阶段六:简单递归

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第6张图片

考察类型

递归类问题,超简单的那种,比如斐波那契

必刷题目

47.斐波那契数列

48.二叉树的前序遍历

49.二叉树的中序遍历

50.二叉树的后序遍历

参考学习资料

九章算法:

包含面试算法知识点及考察频率,教你做到刷100题等于别人刷300题,覆盖90%国内外一线大厂算法面试高频考点,一个月内搞定算法面试。

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第7张图片

目前开放免费试听章节,感兴趣的戳这里

递归九讲:

适合基础相对薄弱的同学,可以通过大量实操演练互动学习,掌握面试中常考的二叉树、排列组合等问题。带你在短时间内掌握递归算法的解题思路。同样开放免费试听,感兴趣的可以戳这里

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第8张图片

进阶必刷编程80题

阶段一:链表

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第9张图片

必刷题目

翻转链表(一) Algorithms

翻转链表(二)

K组翻转链表

链表的中点

带环链表

带环链表 II

链表排序

阶段二:二分法

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第10张图片

必刷题目

二分查找

搜索二维矩阵

寻找峰值

经典二分查找问题

目标最后位置

阶段三:二分答案

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第11张图片

必刷题目

木材加工

书籍复印

方阵排队

评委出题

阶段四:相向双指针

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第12张图片

必刷题目

两数之和

三数之和

四数之和

接雨水

移动零

合并排序数组

最小子串覆盖

去除重复元素

全零子串的数量

字符串划分

两数组的交集

和大于S的最小子数组

阶段五:宽度优先搜索

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第13张图片


必刷题目

岛屿的个数

课程表

骑士的最短路径II

单词接龙

图是否是树

绘制填充

迷宫

阶段六:二叉树遍历

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第14张图片

必刷题目

二叉树的前序遍历

二叉树的中序遍历

二叉树的后序遍历

二叉树的层次遍历

前序遍历和中序遍历树构造二叉树

中序遍历和后序遍历树构造二叉树

阶段七:二叉树&分治法

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第15张图片


必刷题目

对称二叉树

二叉树中最近的叶子

最小子树

最大子树

具有最大平均数的子树

阶段八:二叉树搜索树

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第16张图片


必刷题目

BST中第K小的元素

BST的中序前驱节点

在二叉查找树中插入节点

验证二叉查找树

两数之和 - BST版本

阶段九:深度优先搜索

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第17张图片


必刷题目

订单分配

单词矩阵

数独

因式分解

汉诺塔

电话号码的字母组合

N皇后问题(一)

阶段十:坐标型动态规划

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第18张图片


必刷题目

不同的路径

不同的路径 II

老鼠跳跃

停在原地的方案数2

最长上升子序列

数字三角形

不同的子序列 II

阶段十一:背包型动态规划

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第19张图片

必刷题目

换硬币

组合总和 IV

背包问题

举重

浮点数组合和

背包问题(二)

背包问题 III

背包问题 IV

背包问题 V

最小划分

阶段十二:匹配型动态规划

题目分类大纲如下:

刷LeetCode刷到怀疑智商?快来看,Google大佬已经把最佳刷题顺序理好了!_第20张图片


必刷题目

编辑距离

最长公共子序列

最长公共子串

正则表达式匹配

通配符匹配

最后,希望这篇攻略能让你有所收获

看到这里的人都能上岸,点个赞再走吧~

你可能感兴趣的:(算法,二叉树,链表,面试,数据结构)