Skip to content

LeetCode 刷题攻略:配思维导图,各个类型的经典题目刷题顺序、经典算法模板,以及详细图解和视频题解。这里精选的题目都不是孤立的,而是由浅入深一脉相承的,相信只要按照刷题攻略上的顺序来学习,一定会有所收获!给个star支持一下吧!

Notifications You must be signed in to change notification settings

fanfan2014/leetcode-master

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Repository files navigation

目录:

算法面试思维导图

算法面试知识大纲

算法文章精选

(持续更新中....)

LeetCode 刷题攻略

刷题顺序:建议先从同一类型里题目开始刷起,同一类型里再从简单到中等到困难刷起,题型顺序建议:数组-> 链表-> 哈希表->字符串->栈与队列->树

这里我总结了各个类型的经典题目,初学者可以按照如下顺序来刷题,算法老手可以按照这个list查缺补漏!

(持续补充ing)

算法模板

各类基础算法模板

LeetCode 最强题解:

题目类型难度解题方法
0001.两数之和数组简单暴力哈希
0015.三数之和数组中等双指针哈希
0017.电话号码的字母组合回溯中等回溯
0018.四数之和数组中等双指针
0019.删除链表的倒数第N个节点链表中等双指针
0020.有效的括号简单
0021.合并两个有序链表链表简单模拟
0024.两两交换链表中的节点链表中等模拟
0026.删除排序数组中的重复项数组简单暴力快慢指针/快慢指针
0027.移除元素数组简单暴力双指针/快慢指针/双指针
0028.实现strStr()字符串简单KMP
0035.搜索插入位置数组简单暴力二分
0037.解数独回溯困难回溯
0039.组合总和数组/回溯中等回溯
0040.组合总和II数组/回溯中等回溯
0042.接雨水数组/栈/双指针困难双指针单调栈动态规划
0046.全排列回溯中等回溯
0047.全排列II回溯中等回溯
0051.N皇后回溯困难回溯
0052.N皇后II回溯困难回溯
0053.最大子序和数组简单暴力贪心 动态规划 分治
0059.螺旋矩阵II数组中等模拟
0077.组合回溯中等回溯
0078.子集回溯/数组中等回溯
0083.删除排序链表中的重复元素链表简单模拟
0084.柱状图中最大的矩形数组困难单调栈
0090.子集II回溯/数组中等回溯
0093.复原IP地址回溯中等回溯
0094.二叉树的中序遍历中等递归迭代/栈
0098.验证二叉搜索树中等递归
0100.相同的树简单递归
0101.对称二叉树简单递归迭代/队列/栈
0102.二叉树的层序遍历中等广度优先搜索/队列
0104.二叉树的最大深度简单递归迭代/队列/BFS
0105.从前序与中序遍历序列构造二叉树中等递归
0106.从中序与后序遍历序列构造二叉树中等递归
0107.二叉树的层次遍历II简单广度优先搜索/队列/BFS
0110.平衡二叉树简单递归
0111.二叉树的最小深度简单递归队列/BFS
0112.路径总和简单深度优先搜索/递归回溯
0116.填充每个节点的下一个右侧节点指针二叉树中等递归迭代/广度优先搜索
0117.填充每个节点的下一个右侧节点指针II二叉树中等递归迭代/广度优先搜索
0131.分割回文串回溯中等回溯
0141.环形链表链表简单快慢指针/双指针
0142.环形链表II链表中等快慢指针/双指针
0143.重排链表链表中等快慢指针/双指针 也可以用数组,双向队列模拟,考察链表综合操作的好题
0144.二叉树的前序遍历中等递归迭代/栈
0145.二叉树的后序遍历困难递归迭代/栈
0151.翻转字符串里的单词字符串中等模拟/双指针
0155.最小栈简单
0199.二叉树的右视图二叉树中等广度优先遍历/队列
0202.快乐数哈希表简单哈希
0203.移除链表元素链表简单模拟虚拟头结点
0205.同构字符串哈希表简单哈希
0206.翻转链表链表简单双指针法递归
0209.长度最小的子数组数组中等暴力滑动窗口
0216.组合总和III数组/回溯中等回溯算法
0219.存在重复元素II哈希表简单哈希
0222.完全二叉树的节点个数简单递归
0225.用队列实现栈队列简单队列
0226.翻转二叉树二叉树简单递归迭代
0232.用栈实现队列简单
0235.二叉搜索树的最近公共祖先二叉搜索树简单递归迭代
0236.二叉树的最近公共祖先二叉树中等递归/回溯
0237.删除链表中的节点链表简单原链表移除添加虚拟节点 递归
0239.滑动窗口最大值滑动窗口/队列困难单调队列
0242.有效的字母异位词哈希表简单哈希
0257.二叉树的所有路径简单递归/回溯
0332.重新安排行程深度优先搜索/回溯中等深度优先搜索/回溯算法
0344.反转字符串字符串简单双指针
0347.前K个高频元素哈希/堆/优先级队列中等哈希/优先级队列
0349.两个数组的交集哈希表简单哈希
0350.两个数组的交集II哈希表简单哈希
0383.赎金信数组简单暴力字典计数哈希
0404.左叶子之和树/二叉树简单递归迭代
0416.分割等和子集动态规划中等背包问题/01背包
0429.N叉树的层序遍历简单队列/广度优先搜索
0434.字符串中的单词数字符串简单模拟
0450.删除二叉搜索树中的节点中等递归
0454.四数相加II哈希表中等哈希
0459.重复的子字符串字符创简单KMP
0486.预测赢家动态规划中等递归记忆递归动态规划
0491.递增子序列深度优先搜索中等深度优先搜索/回溯算法
0501.二叉搜索树中的众数二叉树简单递归/中序遍历
0513.找树左下角的值二叉树中等递归迭代
0515.在每个树行中找最大值二叉树简单广度优先搜索/队列
0530.二叉搜索树的最小绝对差二叉树搜索树简单递归迭代
0538.把二叉搜索树转换为累加树二叉树简单递归迭代
0541.反转字符串II字符串简单模拟
0559.N叉树的最大深度N叉树简单递归
0572.另一个树的子树二叉树简单递归
0575.分糖果哈希表简单哈希
0589.N叉树的前序遍历简单递归栈/迭代
0590.N叉树的后序遍历简单递归栈/迭代
0617.合并二叉树简单递归迭代
0637.二叉树的层平均值简单广度优先搜索/队列
0654.最大二叉树中等递归
0685.冗余连接II并查集/树/图困难并查集
0669.修剪二叉搜索树二叉搜索树/二叉树简单递归迭代
0700.二叉搜索树中的搜索简单递归迭代
0701.二叉搜索树中的插入操作简单递归迭代
0705.设计哈希集合哈希表简单模拟
0707.设计链表链表中等模拟
0841.钥匙和房间孤岛问题中等bfsdfs
0844.比较含退格的字符串字符串简单双指针优化 使用栈的思路但没有必要使用栈
0977.有序数组的平方数组中等双指针
1002.查找常用字符简单
1047.删除字符串中的所有相邻重复项哈希表简单哈希表/数组
剑指Offer05.替换空格字符串简单双指针
剑指Offer58-I.翻转单词顺序字符串简单模拟/双指针
剑指Offer58-II.左旋转字符串字符串简单反转操作
剑指Offer59-I.滑动窗口的最大值滑动窗口/队列困难单调队列
面试题02.07.链表相交链表简单模拟

持续更新中....

关于作者

大家好,我是程序员Carl,哈工大师兄,ACM 校赛、黑龙江省赛、东北四省赛金牌、亚洲区域赛铜牌获得者,先后在腾讯和百度从事后端技术研发,CSDN博客专家。对算法和C++后端技术有一定的见解,利用工作之余重新刷leetcode。

加我的微信,备注:「个人简单介绍」+「组队刷题」, 拉你进刷题群,每天一道经典题目分析,而且题目不是孤立的,每一道题目之间都是有关系的,都是由浅入深一脉相承的,所以学习效果最好是每篇连续着看,也许之前你会某些知识点,但是一直没有把知识点串起来,这里每天一篇文章就会帮你把知识点串起来。我也花了不少精力来整理我的题解,而且我不会在群里发任何广告,纯自己学习和分享。 欢迎你的加入!

我的公众号

更多精彩文章持续更新,微信搜索:「代码随想录」第一时间围观,关注后回复: 「简历模板」「java」「C++」「python」「算法与数据结构」 等关键字就可以获得我多年整理出来的学习资料。

每天8:35准时为你推送一篇经典面试题目,帮你梳理算法知识体系,轻松学习算法!,并且公众号里有大量学习资源,也有我自己的学习心得和方法总结,相信你一定会有所收获!

About

LeetCode 刷题攻略:配思维导图,各个类型的经典题目刷题顺序、经典算法模板,以及详细图解和视频题解。这里精选的题目都不是孤立的,而是由浅入深一脉相承的,相信只要按照刷题攻略上的顺序来学习,一定会有所收获!给个star支持一下吧!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published